Ruby On Rails - 通过控制器将参数从前端传递到数据库
问题描述:
如何仅通过控制器将参数从前端传递到Ruby on Rails的后端API?我不想为此使用模型或视图。Ruby On Rails - 通过控制器将参数从前端传递到数据库
我正在使用Ruby Gem,它捕获一些需要存储到后端数据库的使用数据。
我已经创建了一个控制器,发送过帐参数,但我得到一个错误,说没有找到视图。
ActionView::MissingTemplate (Missing template usage_metrics/create, application/create with {:locale=>[:en], :formats=>[:json, :js, :html, :text, :js, :css, :ics, :csv, :vcf, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip, :web_console_v2], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :coffee, :jbuilder]}. Searched in:
* "/home/local/www/cc2/cc_user-frontend/app/views"
* "/home/local/.rvm/gems/ruby-2.2.3/gems/ckeditor-4.2.2/app/views"
):
答
您需要以适当的格式发送请求(即json),并确保控制器的操作对此作出响应。目前它试图用html做出响应,但没有为此找到模板。
例如,在行动,你已经做了后,你该怎么做:
respond_to do |format|
format.json { render json: { whatever: is_needed_in_the_response } }
end
,你会得到你的回应的方式。
或者,如果解析params后不需要回应,则可以使用render nothing: true
。
N.B.如果没有找到模板,我认为最新版本的Rails将使用nothing/json进行响应。不知道这是如何影响你的。
希望有帮助!
答
,如果你想返回一些数据,JSON,你可以使用
render json: data
,但如果你只想要回状态
render json: {}, status: 200
可您发布UsageMetrics控制器 – Cyzanfar
你的行动需要输出什么通过'render',或者假设你想渲染一个视图。 – meagar