![](/img/trans.png)
[英]Ruby on Rails - Issues with AJAX (ActionController:UnknownFormat)
[英]ActionController::UnknownFormat (Ruby on Rails)
我正在创建一个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);
});
});
在此先感谢您为我提供的任何帮助。
我的最后一次尝试,似乎超出了我的深度。 与原始代码一起使用,文件未重命名。 将您的js文件保留在原处。
respond_to do |format|
format.html {}
format.js do
redirect('/assets/show.js')
end
end
尽管我非常感谢为解决这个问题而付出的所有努力,但我必须建议我找到了解决问题的方法。
错误出在我的index.html.erb上,我没有放它,因为我认为这与问题无关。 我的索引如下所示:
<div>
<%= link_to "Create new class", new_klass_path(@klass) %>
</div>
出现未知格式错误是因为它不知道“ @klass”是什么。 或者我相信。 我一拿走,就可以顺利地从一页过渡到另一页。 而且,看起来像这样知道:
<div>
<%= link_to "Create new class", new_klass_path %>
</div>
如果这惹恼了任何人,我深表歉意。 我真的很感谢大家的帮助。 我将尝试快速升级,以便为您检查有用的答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.