我找到了一种在Play中定义主键的方法:
case class User(id: Pk[Long], name: String)
但我没有找到任何处理外键的方法。是否有任何人或者我必须将其用作普通场?
答案 0 :(得分:1)
您可以将其视为普通字段。
顺便提一下,您可以查看样本游戏!框架应用。你可以在Play中找到它们!在“样本”文件夹中分发。例如,检查计算机数据库项目。数据库中有外键,但在代码中它们被视为普通字段。
演进:
create table company (
id bigint not null,
name varchar(255) not null,
constraint pk_company primary key (id))
;
create table computer (
id bigint not null,
name varchar(255) not null,
introduced timestamp,
discontinued timestamp,
company_id bigint,
constraint pk_computer primary key (id))
;
alter table computer add constraint fk_computer_company_1 foreign key (company_id) references company (id) on delete restrict on update restrict;
代码:
case class Computer(id: Pk[Long] = NotAssigned, name: String, introduced: Option[Date], discontinued: Option[Date], companyId: Option[Long])