【发布时间】:2015-01-11 03:40:15
【问题描述】:
我有一张桌子叫permissions;这就像用户可以拥有的不同角色一样。随着项目的发展,我可能会添加更多功能,因此会创建更多permissions。
我有一个PermissionSeeder.php,我想继续添加我添加的权限。然后每次添加新权限时,我都想在上面运行播种机。但是,不应创建现有条目。
我正在考虑在每次更新时截断表,但是其他数据透视表上的 permission_id 会发生冲突,因为它们是外键。
这就是我现在要做的:
use Permission;
class PermissionSeeder extends Seeder {
public function run()
{
$permissions = [...]; // this is the array of ALL permissions that will keep on growing
foreach ($permissions as $permission) {
$model = Permission::whereName($permission['name']);
if ($model->count() <= 0) {
DB::table('permissions')->insert($permission);
}
}
}
}
有更好的做法吗?
【问题讨论】:
标签: php laravel laravel-4 eloquent seeding