gpt4 book ai didi

ruby-on-rails-3 - 使用 json 在 rails api 中创建操作

转载 作者:行者123 更新时间:2023-12-04 07:10:19 24 4
gpt4 key购买 nike

我正在尝试在将充当 API 的 Rails Controller 中构建一个简单的操作。

在这种情况下,我尝试在客户端发布 json 编码字符串时运行创建。

现在我让它看起来像这样工作:

def create
@user = User.new.from_json(params[:user])
respond_to do |format|
if @user.save
format.json { render json: @user, status: :created, location: @user }
else
format.json { render json: @user.errors, status: :unprocessable_entity }
end
end
end

我不喜欢我如何依赖 to_json 调用来完成创建。现在我只响应 json 负载,但如果我们决定将其扩展为 xml,则此代码会中断。

有没有更简洁的方法来从以 json 格式发布的数据创建新用户?

我尝试将 params[:user](这是 json 字符串)传递给 User.new,但出现了错误。

作为引用,我的 json 如下所示:

{"email":"email.address@gmail.com","password":"password"}

最佳答案

不确定,但也许您想在 format.json block 中执行 .from_json(params[:user]) 部分?

def create
@user = User.new
respond_to do |format|
format.json do
if @user.from_json(params[:user]).save
#render user
else
#render errors
end
end
format.xml do
if @user.from_xml(params[:user]).save
else
end
end
end
end

这样当您收到 xml 时它就不会中断。

关于ruby-on-rails-3 - 使用 json 在 rails api 中创建操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8569192/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com