Ruby on rails ActionController::控制器中的未知信息(#索引)

Ruby on rails ActionController::控制器中的未知信息(#索引),ruby-on-rails,ajax,format,link-to,Ruby On Rails,Ajax,Format,Link To,我有一个链接到调用我的#索引。在这个方法中有一个respond\u to,用于format.js,因此我可以启动一些Ajax。事情是这样的,当我查看控制台时,由于一个“ActionController::UnknownFormat” 我已经从以前的帖子中测试出了不同的解决方案,但我不知道我遗漏了什么 控制器: def index respond_to do |format| format.js { render partial: 'private/messages/load_more_me

我有一个
链接到
调用我的
#索引
。在这个方法中有一个
respond\u to
,用于
format.js
,因此我可以启动一些Ajax。事情是这样的,当我查看控制台时,由于一个
“ActionController::UnknownFormat”

我已经从以前的帖子中测试出了不同的解决方案,但我不知道我遗漏了什么

控制器:

def index
 respond_to do |format|
  format.js { render partial: 'private/messages/load_more_messages' }
 end
end
视图:

<%= link_to "Load messages", private_messages_path(:conversation_id => conversation.id), remote: true %>
conversation.id),远程:真%>

有人对此有什么想法吗?这本应该是一个教科书案例,但我一直在用这个案例来打击我的头。

如果您正在加载HTML部分,请像这样尝试:

def index
 render partial: 'private/messages/load_more_messages'
end
尽管我建议为获取传递路径的部分创建一个特定的端点,因为这可能是您在项目中经常做的事情

像这样的

  def render_partial(partial_route)
    render partial: partial_route
  end

如果要加载HTML部分,请按如下方式尝试:

def index
 render partial: 'private/messages/load_more_messages'
end
尽管我建议为获取传递路径的部分创建一个特定的端点,因为这可能是您在项目中经常做的事情

像这样的

  def render_partial(partial_route)
    render partial: partial_route
  end

嗯,在测试了各种各样的想法之后,我回到了我最初的想法,它工作得非常完美。我不知道第一次出了什么问题,但现在它是完美的

嗯,在对各种各样的想法进行了测试之后,我又回到了我最初的想法,它运行得非常完美。我不知道第一次出了什么问题,但现在它是完美的

嗯,既然想法是使用Ajax请求,我应该保留“respond_to”否?我的意思是,让我的“link to”成为“remote:true”有什么意义呢?也就是说,为了我的帖子的目的,我删掉了我在回复之前的变量赋值,非常简洁地表达了你的第二点,这肯定会使我的代码更讨人喜欢。谢谢你的建议@Narf如果您试图通过ajax获取partial,您只需要从上面的代码片段中获取响应并将其附加到DOM中。不确定它应该如何实现这一点,尤其是知道我的partial是一个“js.erb”。我确实试过了,但我得到了同样的结果。@Narf我很抱歉,我以为你是在试图呈现一个在itHum中包含JavaScript的html.erb,因为想法是使用Ajax请求,所以我应该保留“respond_to”否?我的意思是,让我的“link to”成为“remote:true”有什么意义呢?也就是说,为了我的帖子的目的,我删掉了我在回复之前的变量赋值,非常简洁地表达了你的第二点,这肯定会使我的代码更讨人喜欢。谢谢你的建议@Narf如果您试图通过ajax获取partial,您只需要从上面的代码片段中获取响应并将其附加到DOM中。不确定它应该如何实现这一点,尤其是知道我的partial是一个“js.erb”。我确实试过了,但我得到了相同的结果。@Narf我很抱歉,我以为你试图呈现一个包含JavaScript的html.erb