我在Laravel 5.3中创建了一个网站,该网站有两个不同的注册入口点,这些入口点需要是子域名。
我已经设置了两条路线,但我有点迷失了如何设置两个子域的Auth :: routes()。
一条路线将用于注册并支付每月订阅费的用户,而另一条路线则不会附加订阅费。
作为网站注释:这两个注册表单目前是相同的,但是可以添加一些字段,而不是基本的用户名/密码字段(想想姓名,姓氏等)。
答案 0 :(得分:1)
如果订阅用户和非订阅用户在同一个表中,您可以手动对用户进行身份验证(请参阅docs):
Scanner kbd=new Scanner(System.in);
System.out.print("Meeting Times: \n"+"1) 8:00-12:00 2) 12:00-18:00 3) 18:00-23:00\n");
System.out.print("\nChoose options 1, 2, or 3.\n");
int p, morning=0, noon=0, evening=0;
String first = "8:00-12:00", second="12:00-18:00",third="18:00-23:00";
while (p>4){
System.out.print("Enter the best time available for person 1.");
p=kbd.nextInt();
morning++;
}kbd.close();
此if (Auth::attempt(['email' => $email, 'password' => $password])) {
// The user is logged in
}
方法可以选择发送更多参数:
Auth:attempt
您需要在数据库中添加一个额外字段,以显示用户是否已订阅(if (Auth::attempt(['email' => $email, 'password' => $password, 'subscribed' => 1])) {
// The user is a subscriber and logged in
}
),并且您应该通过两个不同的注册页面填写1或0。
数据库中的subscribed
和name
字段应为surname
,因此填写它们是可选的。
答案 1 :(得分:1)
路由组件中有一个子域功能:
路由组也可用于处理子域路由。可以像路由URI一样为子域分配路由参数,允许您捕获子域的一部分以供路由或控制器使用。可以使用组属性数组上的域密钥指定子域:
Route::group(['domain' => '{account}.myapp.com'], function () {
Route::get('user/{id}', function ($account, $id) {
// your code
});
});
https://laravel.com/docs/5.3/routing#route-group-sub-domain-routing