ActionController :: UnknownFormat(Ruby on Rails)

时间:2018-05-16 17:02:17

标签: jquery ruby

我正在创建一个Ruby on Rails应用程序,我在其中渲染我的'new.html.erb'(在我的klass控制器中),并在它上面渲染我的部分'_select_previous.html.erb',我也有'' link_to'来回切换一个到另一个。但是,当我尝试在'index.html.erb'上启动我的项目然后使用'link_to'转到新文件时,它会向我显示上面的错误。

我正在使用jQuery从一个视图切换到另一个视图。

这是我的new.html.erb:

<p> Or select from the previous created classes <%= link_to "here", 
new_klass_path, id: "link_to", :remote => true %> </p>

<div id="previous">
   <%= render :partial => 'select_previous' %>
</div>

<div id="content">
 <!-- Ruby form -->
</div>

这是我的klasses控制器:

def index
    @klass = Klass.all.paginate(:page => params[:page])
    #import_klasses(@klass)
end

def new
    @klass = Klass.new
    #saved = @klass.save
    #@klass.save!
    #if saved
       #s1 = Student.last.id
       #k1 = Klass.last.id
       #@enrollments = Enrollment.new(student_id: s1, klass_id: k1)
       #binding.pry
       #@enrollments.save!
     #redirect_to :controller => 'enrollments', :action => 'index'
     #flash[:alert] = "Class Created"
  #end
#end

  respond_to do |format|
     format.html {}
     format.js
  end
end

这是我的show.js:

$(document).ready(function() {
$("#days").hide();
$("#grade").hide();
$("#class").hide();
$("#all").hide();
$("#previous").hide();

$("#link_to").click(function () {
    var count = $(this).data("count") || 0;
    if(count == 1)
    {
        $("#content").hide();
        $("#previous").show();
    }
    else if(count == 2)
    {
        $("#content").show();
        $("#previous").hide();
        count = 0;
    }

    $(this).data("count", ++count);
});
});

提前感谢您提供给我的任何帮助。

2 个答案:

答案 0 :(得分:0)

我的最后一次尝试,因为我似乎超出了我的深度。将此与原始代码一起使用,文件未发送。将你的js文件留在原处。

respond_to do |format|
    format.html {}
    format.js do
        redirect('/assets/show.js')
    end
end

答案 1 :(得分:0)

虽然我非常感谢为解决这个问题而付出的所有努力,但我必须建议我找到解决问题的方法。

错误发生在我的index.html.erb上,我没有提到,因为我认为它与问题无关。我的索引看起来像这样:

<div>
    <%= link_to "Create new class", new_klass_path(@klass) %>
</div>

出现未知格式错误,因为它不知道&#34; @klass&#34;是;或者我相信。一旦我把它拿走,从一页到另一页的过渡进展顺利。此外,它看起来像这样知道:

<div>
    <%= link_to "Create new class", new_klass_path %>
</div>

如果这让任何人生气,我深表歉意。我非常感谢大家的帮助。我会尽快升级,给你们检查有用的答案。