【发布时间】:2019-07-10 08:41:36
【问题描述】:
我有一个使用
构建的简单 APIrails new my_api --api
然后
rails g scaffold Model name age
我可以像这样使用 curl POST 请求创建新记录
curl -H "Accept: application/json" -H "Content-type: application/json" -d '{"name": "Fred", "age": "5"}' "http://localhost:3000/model_name"
问题
是否可以在同一个 POST 请求中提交多个新记录?如果是这样,JSON 应该是什么样的?
到目前为止我已经尝试过什么
我尝试过{"name": "Fred", "age": "5"} 的变体,例如{"name": ["Fred", "Mary"], "age": ["5", "6"]}
API 不会拒绝此 JSON,而是创建 1 条记录(不是 2 条),其值为 nil 而不是实际数据。
注意
当前控制器代码是
def create
@model = Model.new(model_params)
if @model.save
render json: @model, status: :created, location: @model
else
render json: @model.errors, status: :unprocessable_entity
end
end
【问题讨论】:
-
您是否尝试过在请求中传递哈希数组(多条记录)?
-
@Ni3 不,我没有,我对 curl 很陌生,以上是我所知道的
-
@user5783745 给您的另一个提示:尝试使用
POSTMAN应用程序提出您的请求。在构建 API 时非常有用 -
@LucasWieloch 我不知道这颗宝石。谢谢,下次试试:)