模态-如何传入正确的变量以在javascript中呈现
我正在尝试向render语句传递多个变量,该语句将使用以下命令呈现_formpartial:模态-如何传入正确的变量以在javascript中呈现,javascript,jquery,ruby-on-rails,bootstrap-modal,Javascript,Jquery,Ruby On Rails,Bootstrap Modal,我正在尝试向render语句传递多个变量,该语句将使用以下命令呈现_formpartial: $(document).ready(function() { $('#contact_modal').click(function(event){ $("#modal-window").html("<%= escape_javascript(render 'contacts/form', new_contact: Contact.new ) %>"); new_contact
$(document).ready(function() {
$('#contact_modal').click(function(event){
$("#modal-window").html("<%= escape_javascript(render 'contacts/form', new_contact: Contact.new ) %>");
new_contact: @contact, new_case: @case
但它似乎无法识别新的联系人和新的案例变量。我如何传入这两种格式,然后以简单的形式使用它们
编辑:
我无法使其与以下安装程序一起工作,因为它有许多联系人:
routes.rb
resources :contacts
resources :cases do
resources :contacts, :shallow => true
end
联系人\u controller.rb
def new
if params[:case_id]
@case = Case.find(params[:case_id])
@contact = @case.contacts.build
@create_case_contacts_array = [@case, @contact]
else
@contact = Contact.new
@create_case_contacts_array = @contact
end
end
def create
if params[:case_id]
@case = Case.find(params[:case_id])
@contact = @case.contacts.build(params[:contact])
else
@contact = Contact.new(contact_params)
end
@contact.user = @user
...
end
调用模式的index.html.erb
$("#modal-window").html("<%= escape_javascript( render :partial => "contacts/form", :locals => { :new_case => @case, :new_contact => @contact} ) %>");
这就是它在您的案例中的工作原理:-
$("#modal-window").html("<%= escape_javascript( render :partial => "contacts/form", :locals => { :new_contact => @contact ,:new_case => @case} ) %>");
现在,只有@contact和@case存在,您才能轻松访问表单中的新联系人和新案例解决问题
我只是没有通过contacts_controller.rb中的索引操作传入@contact。新操作实际上从未被调用,因为我正在通过index.html.erb文件中的模式手动调用它
undefined method `model_name' for NilClass:Class
render :partial => "person", :locals => { :name => "david" ,:surname => "anderson"}
$("#modal-window").html("<%= escape_javascript( render :partial => "contacts/form", :locals => { :new_contact => @contact ,:new_case => @case} ) %>");