当我使用以下实体配置运行简单查询时。SqlKorma 生成一个查询并尝试将table_b与table_a联接,但它使用的是不存在的字段?
SELECT "table_a"."token", "table_a"."first-name", "table_a"."last-name", "table_b"."item" FROM ("table_a" LEFT JOIN "table_b" ON "table_b"."table_a_id" = "table_b"."token"
我已经在配置中指定了正确的外键,但 sqlKorma 仍然尝试在table_a_id上加入?
(declare table_a table_b)
(korma/defentity table_a
(korma/pk :token)
(korma/database db)
(korma/table :table_a)
(korma/has-one table_b))
(korma/defentity table_b
(korma/pk :token)
(korma/database db)
(korma/table :table_b)
(korma/belongs-to table_a {:fk :token}))
如果我table_b PK 设置为 table_a_id那么查询将起作用,但我想使用令牌作为 PK。
我需要像这样在另一端添加外键:
(declare table_a table_b)
(korma/defentity table_a
(korma/pk :token)
(korma/database db)
(korma/table :table_a)
(korma/has-one table_b {:fk :token}))
(korma/defentity table_b
(korma/pk :token)
(korma/database db)
(korma/table :table_b)
(korma/belongs-to table_a {:fk :token}))