基本上,您可以通过迁移或在 Eloquent 模型内为 Eloquent 模型定义默认值:
在迁移示例中定义默认值:
$table->string('locale')->default('en');
在 Eloquent 模型中定义默认值:
protected $attributes = ['locale' => 'en'];
这两种方法各有什么优缺点?哪一个更好(对于特定用例)?
最佳答案
如果您使用迁移,则应在迁移中设置默认值。这样做的主要目的是让任何可能与您一起使用您的应用程序的人都能看到整个数据库结构。
除了建议将结构放在一个地方之外,这种方式或模型方式本身并没有什么优点或缺点。你的模型应该很轻。那里不需要发生太多事情。当您在所有这些不同的文件中进行更改时,可能会变得困惑。
这取决于偏好,但推荐的方法是使用迁移,因为这是表结构迁移存在的唯一目的和原因。
关于mysql - 在迁移或 Eloquent 模型中设置默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41213671/