Php 函数的作用是:在默认数据库中查找表
我的laravel项目中有多个数据库,默认数据库名为auth。我的应用程序中的大多数表都在数据库目录中。该数据库中的两个表是具有多对多关系的Php 函数的作用是:在默认数据库中查找表,php,laravel,Php,Laravel,我的laravel项目中有多个数据库,默认数据库名为auth。我的应用程序中的大多数表都在数据库目录中。该数据库中的两个表是具有多对多关系的文档和项目。我使用laravel的attach()函数将记录保存到第三个表中。但我得到了以下错误: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'auth.document_item' doesn't exist. 我是否可以定义表document\u item也在inventory数
文档
和项目
。我使用laravel的attach()
函数将记录保存到第三个表中。但我得到了以下错误:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'auth.document_item' doesn't exist.
我是否可以定义表document\u item
也在inventory
数据库中?如果
- 使用
属性指定每个型号使用的连接$connection
- 在您的
归属关系中指定自定义轴心模型
使用illumb\Database\elount\Model;
类文档扩展模型
{
受保护的$connection='auth';//数据库名称
受保护的$table='documents';//表名
公共职能项目()
{
使用(DocumentItem::class)返回$this->belongToMany(Item::class,'document_Item')->;
}
使用illumb\Database\elount\Model;
类项扩展模型
{
受保护的$connection='inventory';//数据库名称
受保护的$table='items';//表名
公共职能文件()
{
使用(DocumentItem::class)返回$this->belongToMany(Document::class,'Document_item')->using;
}
}
使用illumb\Database\elount\Relations\Pivot;
类DocumentItem扩展了Pivot
{
受保护的$connection='inventory';//数据库名称
受保护的$table='document_item';//表名
公共职能文件()
{
返回$this->belongsTo(文档::类);
}
公共职能项目()
{
返回$this->belongsTo(Item::class);
}
}
您的关系是如何定义的?您可以执行类似于$this->belongToMany(Item::class,'inventory.document.\u Item'的操作)
为关系指定自定义表名。您也可以在模型上定义连接?@Rwd是的,两个模型都有连接defined@apokryfos,将数据库名称添加到belongToMany()中的表名称中会有所帮助。谢谢