Php ATK4:表中没有唯一的列
如何基于没有单列主键的数据库表实现模型?该表有一个复合主键,但没有唯一列。我想创建一个以该表为主表的模型,但据我所知,该模型需要一个唯一的id字段 该表包含服务的自定义字段值,由以下3列组成:字段id、服务id、值。我需要能够引用存在于服务中的所有自定义字段值,并且能够引用链接到特定值的所有服务 我面临的两个主要问题是 1基于没有唯一列的自定义字段值表构建模型 2在两个“开启”条件下完成连接。例如:Php ATK4:表中没有唯一的列,php,user-interface,frameworks,atk4,Php,User Interface,Frameworks,Atk4,如何基于没有单列主键的数据库表实现模型?该表有一个复合主键,但没有唯一列。我想创建一个以该表为主表的模型,但据我所知,该模型需要一个唯一的id字段 该表包含服务的自定义字段值,由以下3列组成:字段id、服务id、值。我需要能够引用存在于服务中的所有自定义字段值,并且能够引用链接到特定值的所有服务 我面临的两个主要问题是 1基于没有唯一列的自定义字段值表构建模型 2在两个“开启”条件下完成连接。例如: services JOIN fields ON services.id = field.
services JOIN fields ON
services.id = field.service_id
JOIN values ON
field.id = values.field_id AND
values.service_id = services.id
我几天前在以下问题中看到了我和罗马人的答案: 2这很简单-您应该将下一个连接添加到上一个连接,而不是模型本身
$j_fields = $services_model->join('fields');
$j_values = $j_fields->join('values'); // $j_fields here not $services_model
您还可以以某种方式定义第二个条件值。service_id=services.id,但说实话,我还没有准备好发布的工作示例。据我记忆所及,您必须使用$model->dsql->andExpr
我想您可以使用addCondition将该条件移动到何处,或者也可以使用DSQL来实现它。谢谢您的快速回答!