Database design 在透视表laravel 4中为复合键设定种子
我在我的laravel 4项目中使用了。我有一个用户和特权表以及一个数据透视表Database design 在透视表laravel 4中为复合键设定种子,database-design,laravel,laravel-4,pivot-table,seeding,Database Design,Laravel,Laravel 4,Pivot Table,Seeding,我在我的laravel 4项目中使用了。我有一个用户和特权表以及一个数据透视表user\u privilage。我使用了generate:seed为用户和特权表设置种子,但我不知道如何为user\u privilage表设置种子。我试图建立一个网站,我想种子基本项目的表,以查看网站如何工作。怎么做?我解决了这个问题。我使用以下方法创建了一个数据透视表role\u userseed: php artisan generate:seed role user 在RoleUserTableSeeder
user\u privilage
。我使用了generate:seed
为用户和特权表设置种子,但我不知道如何为user\u privilage
表设置种子。我试图建立一个网站,我想种子基本项目的表,以查看网站如何工作。怎么做?我解决了这个问题。我使用以下方法创建了一个数据透视表role\u user
seed:
php artisan generate:seed role user
在RoleUserTableSeeder
I中输入:
$adminRole = Role::where('name','=','Admin')->first()->id;
$userRole = Role::where('name','=','Registred user')->first()->id;
$admin = User::where('username','=','admin')->first()->id;
$user = User::where('username','=','user')->first()->id;
$role_user = array(
array('role_id' => $adminRole, 'user_id'=>$admin, 'active'=>1, 'created_at' => new DateTime, 'updated_at' => new DateTime,),
array('role_id' => $userRole, 'user_id'=>$user, 'active'=>1, 'created_at' => new DateTime, 'updated_at' => new DateTime,)
);
// Uncomment the below to run the seeder
DB::table('role_user')->insert($role_user);
而且
db:seed
工作得很好。我解决了这个问题。我使用以下方法创建了一个数据透视表role\u user
seed:
php artisan generate:seed role user
在RoleUserTableSeeder
I中输入:
$adminRole = Role::where('name','=','Admin')->first()->id;
$userRole = Role::where('name','=','Registred user')->first()->id;
$admin = User::where('username','=','admin')->first()->id;
$user = User::where('username','=','user')->first()->id;
$role_user = array(
array('role_id' => $adminRole, 'user_id'=>$admin, 'active'=>1, 'created_at' => new DateTime, 'updated_at' => new DateTime,),
array('role_id' => $userRole, 'user_id'=>$user, 'active'=>1, 'created_at' => new DateTime, 'updated_at' => new DateTime,)
);
// Uncomment the below to run the seeder
DB::table('role_user')->insert($role_user);
和
db:seed
工作得很好。首先,我为privileges表创建了一个seed程序
专用播种机
Privilege::create([
'id' => '1',
'privilege' => 'privilege 1'
]);
Privilege::create([
'id' => '2',
'privilege' => 'privilege 2'
]);
Privilege::create([
'id' => '3',
'privilege' => 'privilege 3'
]);
Privilege::create([
'id' => '4',
'privilege' => 'privilege 4'
]);
Privilege::create([
'id' => '5',
'privilege' => 'privilege 5'
]);
Privilege::create([
'id' => '6',
'privilege' => 'privilege 6'
]);
// Attach all privileges to admin
$user = new User;
$user->email = 'admin@admin.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,2,3,4,5,6));
// Attach privileges 1 & 3 to 2nd user
$user = new User;
$user->email = 'account2@user.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,3));
然后,我将为用户表和数据透视表设置种子
UsersTableSeeder
Privilege::create([
'id' => '1',
'privilege' => 'privilege 1'
]);
Privilege::create([
'id' => '2',
'privilege' => 'privilege 2'
]);
Privilege::create([
'id' => '3',
'privilege' => 'privilege 3'
]);
Privilege::create([
'id' => '4',
'privilege' => 'privilege 4'
]);
Privilege::create([
'id' => '5',
'privilege' => 'privilege 5'
]);
Privilege::create([
'id' => '6',
'privilege' => 'privilege 6'
]);
// Attach all privileges to admin
$user = new User;
$user->email = 'admin@admin.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,2,3,4,5,6));
// Attach privileges 1 & 3 to 2nd user
$user = new User;
$user->email = 'account2@user.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,3));
然后在DatabaseSeeder.php上
$this->call('PrivilegesTableSeeder');
$this->call('UsersTableSeeder');
首先,我为privileges表创建一个播种器 专用播种机
Privilege::create([
'id' => '1',
'privilege' => 'privilege 1'
]);
Privilege::create([
'id' => '2',
'privilege' => 'privilege 2'
]);
Privilege::create([
'id' => '3',
'privilege' => 'privilege 3'
]);
Privilege::create([
'id' => '4',
'privilege' => 'privilege 4'
]);
Privilege::create([
'id' => '5',
'privilege' => 'privilege 5'
]);
Privilege::create([
'id' => '6',
'privilege' => 'privilege 6'
]);
// Attach all privileges to admin
$user = new User;
$user->email = 'admin@admin.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,2,3,4,5,6));
// Attach privileges 1 & 3 to 2nd user
$user = new User;
$user->email = 'account2@user.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,3));
然后,我将为用户表和数据透视表设置种子
UsersTableSeeder
Privilege::create([
'id' => '1',
'privilege' => 'privilege 1'
]);
Privilege::create([
'id' => '2',
'privilege' => 'privilege 2'
]);
Privilege::create([
'id' => '3',
'privilege' => 'privilege 3'
]);
Privilege::create([
'id' => '4',
'privilege' => 'privilege 4'
]);
Privilege::create([
'id' => '5',
'privilege' => 'privilege 5'
]);
Privilege::create([
'id' => '6',
'privilege' => 'privilege 6'
]);
// Attach all privileges to admin
$user = new User;
$user->email = 'admin@admin.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,2,3,4,5,6));
// Attach privileges 1 & 3 to 2nd user
$user = new User;
$user->email = 'account2@user.com';
$user->password = 'pass';
$user->save();
$user->privileges()->attach(array(1,3));
然后在DatabaseSeeder.php上
$this->call('PrivilegesTableSeeder');
$this->call('UsersTableSeeder');