使用Laravel 4.1的新密码代理,有没有办法将一些数据传递给密码提醒视图?具体来说,我希望能够改变密码重置视图的URL。
在这里查看:http://laravel.com/api/source-class-Illuminate.Auth.Reminders.PasswordBroker.html#97-118我不确定它是否足够灵活,可以在不完全扩展此类的情况下接受数据......
答案 0 :(得分:8)
不幸的是,Searsaw建议的代码对我不起作用。我想我错了。但我找到了下一个解决方案:
View::composer('emails.auth.reminder', function($view) use ($user) {
$view->with([
'first_name' => $user->first_name,
'email' => $user->email,
'newPassword' => Input::get('new_password'),
'logo' => asset('/images/mail/logo.png'),
'twitter_img' => asset('/images/mail/btn_twitter_pressed.png'),
'facebook_img' => asset('/images/mail/btn_fb_pressed.png')
]);
});
我在Password::remind
方法
答案 1 :(得分:0)
我不确定我是否完全得到了这个问题,但是如果你想传递一些额外的数据,你可以在Laravel中使用这样的代码: ` $ activation = [];
$ activation ['email'] = $ email;
$ activation ['subject'] ='有些信息';
Mail :: send('emails.auth.activate',$ data,function($ message)use($ activation)
{
$ MESSAGE->至($激活[ '电子邮件']) - &GT受试者($激活[ '主题']);
});`
答案 2 :(得分:0)
提醒方法的数组中的任何内容都将传递给提醒视图。你可以抽出很多这种逻辑并手动完成所有事情。
$user = Password::getUser(Input::get('email'));
$remind_repo = App::make('Illuminate\Auth\Reminders\ReminderRepositoryInterface');
$token = $remind_repo->create($user);
$data['name'] = 'Forest Gump';
$data['likes'] = ['running', 'chocolates'];
$data['girlfriend'] = 'Jenny';
$data['user'] = $user;
$data['token'] = $token;
Mail::send('email.reminder', $data, function($m) use ($user)
{
$m->to($user->getReminderEmail());
});
现在,您的视图可以访问name
,likes
,girlfriend
,user
和token
。