我的聊天框输入如下:
<div class="chatboxinput">
<%= form_with(url: [@conversation, @message], id: "conversation_form") do |f| %>
<%= f.text_area :body, class: "chatboxtextarea", "data-cid" => @conversation.id %>
<% end %>
</div>
正如您所看到的,只是一个基本的form_with(省略了remote:true,因为它是默认值)。
此表单提交时如下:
$('#conversation_form').submit();
它应该通过AJAX提交,然后运行一个javascript文件。
提交该表单时运行的代码如下所示:
class MessagesController < ApplicationController
before_action :authenticate_users_user!
def create
#Do stuff here
respond_to :js
end
end
#Do stuff here
代码执行得很完美,但不是渲染文件messages/create.js.erb
,而只是返回错误
ActionController::UnknownFormat
和
respond_to :js
end
终端显示:
Completed 406 Not Acceptable in 13ms (ActiveRecord: 3.7ms)
ActionController::UnknownFormat (ActionController::UnknownFormat):
app/controllers/messages_controller.rb:22:in `create'
我查看了每个相关的堆栈溢出线程,并且不知道为什么会这样。
另外,我注意到,当发送呼叫时,终端显示Processing by MessagesController#create as HTML
这不应该是JS吗?