Laravel迁移,指定要插入数据的表
您如何指定在laravel中使用哪个表?我的所有数据都被添加到users表中,但我有admins表,我想在其中提交数据 只是想了解一下,在Laravel迁移,指定要插入数据的表,laravel,Laravel,您如何指定在laravel中使用哪个表?我的所有数据都被添加到users表中,但我有admins表,我想在其中提交数据 只是想了解一下,在store方法中保存管理员记录时,该记录是admin类的实例吗?我如何处理有管理员用户的场景是在users表中有一个名为is\u admin的额外列,这是一个布尔值。创建新用户时,应将默认值设置为false。否则,当您将该值更改为true时,用户将成为管理员。这样,您就不会处理两个不同的表,只处理一个用户表 add_user_id_to_posts_table
store
方法中保存管理员记录时,该记录是admin
类的实例吗?我如何处理有管理员用户的场景是在users
表中有一个名为is\u admin
的额外列,这是一个布尔值。创建新用户时,应将默认值设置为false。否则,当您将该值更改为true时,用户将成为管理员。这样,您就不会处理两个不同的表,只处理一个用户表
add_user_id_to_posts_table
通过写作
php artisan make:migration add_user_id_to_posts_table
然后在database/migrations文件夹中,您将获得一个新文件,其中包含创建日期和您提供的名称
在这个文件中可以找到2个方法up()和down()
在up()方法中,您将有
public function up()
{
Schema::table('posts', function (Blueprint $table) {
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users');
});
}
其中“posts”是您的表名在laravel中,每个表代表一个模型
。默认情况下,如果表名为users
,则模型名应为User
。我的意思是,如果您默认使用User
模型,Laravel会认为您的am表名为users
。如果要更改该表名,例如,如果您有一个名为user
的表,并且您的模型名也是user
,则必须在user
模型类中指定表名,如下所示
protected$table='user'
因此,如果您现在想在user
表中插入一些内容,那么可以使用user
模型来完成。如果您有另一个名为的模型,例如Post
,那么您应该有另一个名为Post
的模型。因此,现在您可以使用Post模型插入/更新或使用Post
模型执行任何其他相关任务
所以,很快,在Laravel中,您需要不同的模型来处理不同的表 请把你的问题说清楚。还显示一些代码。谢谢@Imran,有两个表,我需要插入管理员用户和普通用户,当我单击“提交”将数据添加到管理员表时,它会给我以下错误列未找到:“字段列表”中的1054未知列“first_name”(SQL:insert intousers
…所以我看到它被提交到users表而不是admins表…我如何指定…虽然对laravel来说是新的…答案补充了。最好的luckThanks@Filiusbancci,可能我没有解释清楚。很抱歉,我迁移了两个表,一个是users表,另一个是admins表,插入users没有问题但是,在admin表中添加admin用户时,数据被重定向到users表,如何使其转到admins表?我在提交SQLSTATE[42S22]:Column not found:1054“field list”中的未知列“first_name”(SQL:insert intousers
(电子邮件
,第一名
,第二名
,位置
,密码
,在
处更新,在
处创建)值(,