创建不同类型的用户

时间:2016-11-12 22:28:39

标签: laravel eloquent laravel-5.2

我正在创建一个拥有2种类型用户(雇主和候选人)的应用程序。在我的应用程序中,我有4个表(用户,候选人,雇主,account_types),

users table :
- email, 
- name, 
- surname, 
- password 
- account_type

candidates table:
- id;
- user_id
- other columns

employers table:
- id;
- user_id
- other columns

accounts_type:
-id;
- title

所以基本上我对每种类型的用户都有2条不同的路线,如果候选人可能像" domain.com/candidate/register"如果雇主是" domain.com/employer/register"。我正在从laravel看已经准备好的代码,但我有点正在努力做正确的方法。我在AuthController上查看函数create,但是我需要再创建一条记录,除了记录users表之外,我需要例如if是雇主,创建记录并插入Employers表,反之亦然如果是候选人。但我需要首先检查传递的是什么类型的帐户,我想在我的注册表单中使用隐藏字段来识别create function中的用户类型然后在create function中创建一些条件,但我不认为是非常好的方法。 那么有人可以指导我在我的注册中传递用户类型的最佳方式,而无需创建2个不同的注册控制器或函数,而不在表单上传递隐藏字段吗?

1 个答案:

答案 0 :(得分:0)

您已将它们放在数据库表中。我在我的应用程序中对普通用户和管理员使用相同的东西。为了做到这一点,我在我的控制器中使用它。

use Illuminate\Support\Facades\Auth;

$user_type = Auth::user()->account_type; //I hope you used 0 and 1 for two different accounts
//0 for employer and 1 for candidate

if ($user_type==1) {
         return view('domain.com/candidate/register');
    }else{
        return redirect('domain.com/employer/register'));
    }

我希望这会对你有所帮助。