0

我们在 laravel 模型中创建关系时遇到了问题。

要求:我们想以这样的方式创建一个关系,我们有三个表

block_primary_table

block_id 块名
1 XYZ
2 美国广播公司

块翻译表

ID 语言标识 block_id 块名
1 1 1 XYZ-英文
1 2 1 XYZ-印地语
1 1 2 ABC-英语
1 2 2 ABC-印地语

和第三个用户表,我们在其中捕获用户区域

用户区域

用户身份 用户名 堵塞
1 ABC用户 1 1

我们有一个模块的表单,其中我们有一个区域和块字段,块字段依赖于区域字段,因此在创建新条目时,块会根据区域值加载到下拉列表中,以便我们可以显示该值很容易,因为它将由 ajax 处理。

但是在编辑操作期间,假设我们正在从 user_area 编辑 user_id 1,此时现有值需要进入表单,但是这里像其他字段值一样的问题是正确的,但是对于块,在编辑操作期间,值出现使用实体的字段,在模型中定义,所以在那个关系中我们有

//relationship with block translation table
public function blockRelation() {
     return $this->belongsTo(blockTranslation::class, 'block','block_id');
}

因此,我们期望它将通过将块(user_area 的外键)映射到 block_translation_table 的 block_id(block_translation_table 的非主键)来从块转换表中返回值。

我们是相关的列名,它仍然是将 user_area 表的块列与 block_translation_table 的 id 列映射。

所以请提供问题的解决方案,比如我们如何在 laravel 模型中为外键和非主键创建关系。

4

0 回答 0