我想在laravel 5.4 Registration form中创建这样的参考链接 电子邮件example.com 对于每个注册用户,当链接被点击时,它应该重定向到注册表单,其中ref值自动进入图像中给出的REF表单字段。以下是相关图片RegistrationController
答案 0 :(得分:1)
编辑:根据评论更新了链接生成
使用登录用户的电子邮件生成推荐链接。假设您已将登录用户设为$user
,如果没有将其替换为auth()->user()->email
。请注意,这将需要登录用户的电子邮件。所以不用说,你需要先登录才能生成ref链接。
如果您将当前登录的用户从控制器传递到您的视图,请执行此操作,其中$user = auth()->user();
<a href="{{ route('register', ['ref' => $user->email]) }}" target="_blank">Referral register link</a>
如果您想直接访问登录用户的电子邮件
<a href="{{ route('register', ['ref' => auth()->user()->email]) }}" target="_blank">Referral register link</a>
这就是视图中的样子。
<a href="http://example.com/register?ref=example@example.com" target="_blank">Referral register link</a>
根据您创建表单的方式,在注册表单中添加以下代码。
<input type="text" name="referrer" value="{{ request('ref') }}">
Or
{!! Form::text('referrer', request('ref')) !!}
答案 1 :(得分:0)
这样的想法:在电子邮件中添加如下链接:
<a href="{{ route('register', ['ref' => auth()->user()->email]) }}">Register</a>
在表单中,您可以添加隐藏或禁用的文本框,如下所示:
<input type="textbox" name="ref" value="{{ request()->get('ref') }}"/>
答案 2 :(得分:0)
您还可以将它添加到控制器中的会话对象,如下所示:
function create(Request $request) {
return view('register')->with(['ref' => $request->query('ref')]);
}
如果您正在使用Former或使用表单模型绑定(请参阅here)
,请使用{!! Former::populate(['ref' => $ref]) !!}
填充表单
register.blade.php 中的表单标记与前者:
{!!Former::horizontal_open()
->method('POST') !!}
{!! Former::populate(['ref' => $ref]) !!}
{!! Former::text('ref') !!}
...
{!! Former::actions()
->large_primary_submit('Create') # Combine Bootstrap directives like "lg and btn-primary"
->large_inverse_reset('Reset') !!}
{!!Former::close() !!}