模态-如何传入正确的变量以在javascript中呈现

模态-如何传入正确的变量以在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

我正在尝试向render语句传递多个变量,该语句将使用以下命令呈现_formpartial:

 $(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} ) %>");