我正在使用 Play Framework 2.0 (Java),但是在 Globals 中实现了一个简单的 InitialData 之后,我遇到了一些问题。我正在使用
我有 2 个模型:
- 用户(电子邮件作为 ID)
- SomeModel(长 id 作为 ID)
SomeModel 有一个字段,如:
@ManyToOne
public User user;
所以在 and 有一个 User 有很多 SomeModels 连接到它。
在我的 InitialData 中,我添加了一个用户来测试一些东西:test@test.com。
因此,如果我尝试向该测试用户添加 SomeModel,我没有问题,即使我尝试添加多个。
当我在 InitialData 中添加 SomeModel(让我们调用 TestModel)时,我认为没有问题,因为一切都在这个 TestModel 中运行。但是刚才,我看到如果我尝试向测试用户添加一个新的 SomeModel ,我会遇到这个问题:
[PersistenceException: ERROR executing DML bindLog[] error[Unique index or primary key violation: "PRIMARY_KEY_D ON PUBLIC.SOME_MODEL(ID)"; SQL statement:\n insert into some_model (id, name, description, user_email) values (?,?,?,?) [23505-158]]]
这是我的 InitialData 文件:
# Users
users:
- !!models.User
email: test@test.com
name: Test test
password: test
# SomeModels
somemodels:
- !!models.FuzzySystem
id: 1
name: test
description: test
user: !!models.User
email: test@test.com
我迷失在这=(