User table with position (Right,Left)
我创建了具有推荐链接的用户注册系统。 新用户可以轻松地在此推荐ID下注册,我将新用户设置为左右位置。 但是我仍然需要注意的一点是由于二叉树系统,在用户表中添加了位置ID,新用户将放在左右树中。 因此,如果现有用户在他的前面,则该位置将在现有用户的下面。 为此,我想设置位置ID来计数和排序此二叉树用户。
这里是我的注册控制器
protected function create(array $data)
{
$referred_by = Cookie::get('referral');
return $user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'position' => $data['position'],
'password' => Hash::make($data['password']),
'affiliate_id' => str_random(10),
'referred_by' => $referred_by,
//'position_id' => ?
]);
}
这是我的用户表
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('position');
$table->string('email')->unique();
// $table->string('posid');
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->unsignedInteger('parent_id')->nullable(); // root user will have null parent_id
$table->string('name');
$table->string('position');
$table->string('email')->unique();
$table->string('password');
$table->string('posid');
$table->rememberToken();
$table->timestamps();
$table->foreign('parent_id')->references('id')->on('users')->onDelete('cascade'); // cascade delete children when deleting parent
});
如何编辑registercontroller以在数据库中获取此职位ID。 我可以为在系统中注册的每个用户ID使用parent_id吗? 如何使用它。
请帮助我。