如何使外键成为必需?
Posted
技术标签:
【中文标题】如何使外键成为必需?【英文标题】:How to make foreign key required? 【发布时间】:2016-01-16 06:21:42 【问题描述】:对于文档中给出的模型示例,我注意到您可以创建 pet
对象而不需要 owner
。如何在 JSON 中指定 owner
是必需的?
我从“字段”选项卡中看到了必填开关,但是当我单击它时,该开关没有移动。
[
"name": "pets",
"fields":
"name":
"type": "string"
,
"owner":
"object": "users"
,
"name": "users",
"fields":
"email":
"type": "string"
,
"firstName":
"type": "string"
"pets":
"collection": "pets",
"via": "owner"
]
【问题讨论】:
【参考方案1】:目前在 JSON 中,外键不支持必填字段,但您可以解决它。我来自 Backand,我们实际上计划很快添加它,但同时您可以这样做:
-
在“pets”对象的Before Create和Before Update事件中添加服务器端Action并检查null值,清空抛出错误。使用以下代码:
try
if (userInput.items == null)
throw new Error('must have owner');
catch(err)
throw new Error('must have owner');
-
其他选项是直接访问 mysql 数据库并将列设置为 NOT NULL。完成后打开宠物对象页面并单击“与数据库同步”。它不会在 Backand 中显示任何指示,但会完成工作。
【讨论】:
感谢您的回答。期待 JSON 的支持。以上是关于如何使外键成为必需?的主要内容,如果未能解决你的问题,请参考以下文章