0
Ruby on Rails 3使用user_id POST創建新表項
我有一個提交user_id的表單。我試圖讓POST使用user_id創建一個新的證書條目,並且使:參加屬性爲「是」。
發送的帖子是:
Parameters: {"utf8"=>"✓", "authenticity_token"=>"xYUdeMjkxa1b0AhNTKJi9sDbSPo9MbwMMVPrV7cgpyo=", "certificate"=>[{"user_id"=>"1"}], "commit"=>"Submit"}
這是我的編輯:
<%= form_for(@trained) do |f| %>
<%= select_tag "certificate[][user_id]", options_for_select(@current_users.collect{|x| [x.name, x.id]}), {:multiple => :multiple} %>
<%= f.submit "Submit", class: "btn btn-large btn-primary" %>
<% end %>
這是我的模型:
class Certificate < ActiveRecord::Base
attr_accessible :attend, :pass, :user_id
validates :user_id, presence: true
end
這是我的控制器爲編輯()
def edit
@trained = Certificate.new(params[:user_id])
end
這是我創造certificates_controller()
def create
@trained = params[:certificate][:user_id]
params[:certificate][:attend] = "no"
params[:certificate][:pass] = "no"
end
我一直在嘗試不同的創建()方法,但很茫然。如何獲得POST以使用user_id創建新證書?我需要將sumbit按鈕分成兩個按鈕,一個用於添加,另一個用於刪除。
你知道爲什麼我得到這個錯誤:模板是缺少 使用{:locale => [:en],:formats => [:html],:handlers => [:erb,:builder,:coffee]}缺少模板證書/ create,application/create。搜索位置:*「/ opt/RoR/reseller_connect/app/views」 – DDDD
是的,當您執行創建操作時,它會查找該控制器在views /文件夾中使用create命名的文件,以便它可以向用戶返回響應。所以如果你想渲染任何其他文件,你可以使用渲染'file_name',或者如果你想重定向用戶到一些其他行動,你可以使用redirect_to標記:) –