我用yii2 restful API解释说: http://www.yiiframework.com/doc-2.0/guide-rest-quick-start.html
并且在CURL中它可以正常用于GET和DELETE。 但是当我在CURL中使用它时:
curl -i -H "Accept:application/json" -H "Content-Type:application/json"
-XPOST "my localhost path/customers"
-d '{"name": "xxxx", "family": "xxxx","mobile":"xxxxx","home":"xxxxx","work":"xxxx"}'
它只会在我的表格'客户'中插入自动增量字段" id"我的数据库中的其他字段是空的!
答案 0 :(得分:1)
我不认为这与API功能有关,但相当确定这是一个安全属性"模型中的问题。
请查看this piece of documentation以确保您已将所有其他属性标记为安全。即使通过REST调用,这仍然是一个批量分配,遵循相同的规则。
基本上,您可以在验证规则中将其添加为safe
(至少),也可以将其作为safeAttributes()
- 结果的一部分返回。
答案 1 :(得分:0)
感谢。 我在我的模型类“Customer”中添加以下代码,它可以工作:
public function rules()
{
return [
[['name', 'family', 'mobile', 'home', 'work'], 'required'],
[['name', 'family'], 'string', 'max' => 20],
[['mobile', 'home', 'work'], 'string', 'max' => 11]
];
}