渲染显示视图html有一些限制

时间:2012-09-07 18:27:04

标签: ruby-on-rails-3 view

我想创建一个随机选择生成器,应使用按钮<%= button_to("Randomize someting to do!", {:action => "random_task"}) %>调用 这会调用方法random task

def random_task
  x = rand(Task.first.id..Task.last.id)
  @task = Task.find(x)
  rescue ActiveRecord::RecordNotFound => e
  random_task

  respond_to do |format|
    format.html { render @task}
    format.json { head :no_content }
  end
end

这应该回调我的观点/ random_task.html.erb

 <div class="field">
    <%= f.label :name %><br />
    <%= f.text_field :name,:disabled=>true %>
  </div>
  <div class="field">
    <%= f.label :category %><br />
    <%= f.text_field, :category,:disabled=>true %>
  </div>/tasks/
  <div class="field">
    <%= f.label :points %><br />
    <%= f.number_field :points,:disabled=>true %>
  </div>
  <div class="rank_buttons"> 
     <%= link_to 'Vote up', :action => 'rate_up', :id => task.id %>
     <%= link_to 'Vote down', :action => 'rate_down', :id => task.id %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>  
  <% end %>

编辑问:如果写好表单,如何以正确的方式调用呈现形式?

1 个答案:

答案 0 :(得分:1)

如果我理解正确,random_task不会调用random_task.html.erb,对吧?

random_task应该是控制器的一部分。 rand_task.html.erb应位于与views文件夹中控制器同名的文件夹中。

如果random_task位于randoms_controller.rb,请将random_task.html.erb添加到以下路径:views/randoms/

然后random_task应该呈现你描述的形式。

我希望它有所帮助