Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php laravel中不同于模型名称的列的关系_Php_Laravel_Foreign Keys_Relational Database - Fatal编程技术网

Php laravel中不同于模型名称的列的关系

Php laravel中不同于模型名称的列的关系,php,laravel,foreign-keys,relational-database,Php,Laravel,Foreign Keys,Relational Database,我有两张表,分别是事件和组织。在一个组织中可能有多个事件。过去我不熟悉laravel,所以我创建了事件和组织模型。我在迁移事件表中添加了外键,如下所示 $table->bigInteger('organization_id')->unsigned()->default(null)->nullable(); 现在我无法将organization\u id更改为organization\u id,因为有很多行代码。我在Organizations.php模型中也做了如下操作

我有两张表,分别是事件组织。在一个组织中可能有多个事件。过去我不熟悉laravel,所以我创建了事件和组织模型。我在迁移事件表中添加了外键,如下所示

$table->bigInteger('organization_id')->unsigned()->default(null)->nullable();
现在我无法将organization\u id更改为organization\u id,因为有很多行代码。我在Organizations.php模型中也做了如下操作

public function events()
{
    return $this->hasMany(Events::class);
}
public function organization() 
{
   return $this->belongsTo(Organizations::class);
}
同样在Events.php模型中

public function events()
{
    return $this->hasMany(Events::class);
}
public function organization() 
{
   return $this->belongsTo(Organizations::class);
}
所以当我想将组织中的事件保存为

$organizations->events()->save($event); // $event is an object to be save in organization
然后它给出了一个例外

未找到列:“where子句”中的1054个未知列“events.organizations_id”(SQL:select*from
events
where
events
organizations_id
=3和
events
organizations_id不为空)


我可以理解,我必须保持组织模型到组织,但目前这是不可能的。因此,是否有其他方法将其映射到组织id?

是的,您可以提供表示关系的列名作为关系中的第二个参数:

在事件模型中:

public function organization() 
{
   return $this->belongsTo(Organizations::class,'organization_id');
}

有关更多详细信息,请参阅Laravel。

是的,您可以,只需提供表示关系的列名作为关系中的第二个参数:

在事件模型中:

public function organization() 
{
   return $this->belongsTo(Organizations::class,'organization_id');
}
有关更多详细信息,请参见Laravel