【问题标题】:Calling HAML within Javascript在 Javascript 中调用 HAML
【发布时间】:2013-09-08 14:16:56
【问题描述】:

我是 Ruby on Rails 和 Javascript 的新手。在我的控制器的新功能中如下:

def new
   @student = Student.new

   respond_to do |format|
      format.html # which is by default new.html.haml
      format.json  { render :json=> @student }
end

在我的 new.html.haml 中,我只想添加一个仅包含学生卷号的表单,如果该学生已经存在,则单击提交按钮会将我带到另一个表单,其中字段已被填写现有学生的信息,我可以根据需要对其进行编辑,否则将出现相同的表格,我必须在其中输入新学生的所有信息。

我的问题是,我无法决定如何操作在 haml 表单中单击提交按钮,这是基于学生的存在。我正在考虑在这里使用javascript,但是我必须在javascript中调用包含与学生相关的所有其他字段的haml,我不知道这是否可能。我还没有找到任何关于在 javascript 中调用 haml 的文档。

我不知道如何继续。请帮忙。

编辑:这里我忘了提一件事,提交后一种形式应该根据学生的存在将我重定向到students_controller的create函数和update函数。有可能吗?

【问题讨论】:

    标签: javascript jquery ruby-on-rails forms haml


    【解决方案1】:

    回答您的问题有点困难,但无论如何我都会尝试回答。 :-)

    New 通常用于创建新实例。也许您应该将其命名为 find 或类似的名称。比在控制器中查找执行以下操作:

    def find
      student = Student.find_by_roll_number params[:roll_number]
      if student
        redirect_to edit_student_path(student)
      else
        redirect_to new_student_path
      end
    end
    

    除非您不希望服务器往返,否则不需要 javascript。

    【讨论】:

      猜你喜欢
      • 2016-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多