gat*_*tes 3 ruby ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 ruby-on-rails-5
在我看来,有一个link_to
像random_path
. 因此,当用户单击该链接时,它将转到具有操作的特定控制器,我正在向数据库写入该操作。它真的不需要渲染视图。但是拥有视图模板似乎是强制性的。Is there a way to avoid having the view.
<%= link_to bla_path do %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
在routes.rb
get 'bla' => 'contr#act'
Run Code Online (Sandbox Code Playgroud)
在控制器中
in cont_controller.rb
def act
Model.create(name: "bla")
# I don't need the view for this.
end
Run Code Online (Sandbox Code Playgroud)
http 协议的工作方式是您必须响应每个请求。但是,您可以回复空白消息,在 Rails 中,最简单的方法是添加:
head :ok
Run Code Online (Sandbox Code Playgroud)
在你的行动中的任何地方。
你也可以写你的动作。
def act
Model.create(name: "bla")
render :nothing => true
end
Run Code Online (Sandbox Code Playgroud)
如果您需要返回相同的操作,只需编写
def act
Model.create(name: "bla")
redirect_to :back
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3011 次 |
最近记录: |