首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AJAX与format.js结合使用的结果是"ActionController::UnknownFormat“

AJAX与format.js结合使用的结果是"ActionController::UnknownFormat“
EN

Stack Overflow用户
提问于 2015-01-31 23:53:04
回答 1查看 3.6K关注 0票数 2

我有模型:创意,产品,产品。我试图添加产品的想法,通过项目的观点,想法的编辑。我的edit.html.erb -想法

代码语言:javascript
复制
<div id="items">
  <%= render @idea.items %>
</div>

<div class="products">
  <% @products.each do |p| %>
    <%= p.title %><%= button_to '+', items_path(product_id: p.id, idea_id: @idea.id), remote: true %>
  <% end %>
</div>

我的物品控制器:

代码语言:javascript
复制
def create
    product = Product.friendly.find(params[:product_id])
    @item = @idea.add_product(product.id)

    respond_to do |format|
      if @item.save
        format.js 
      end
    end
  end

idea.rb

代码语言:javascript
复制
 def add_product(product_id)
         item = items.find_by(product_id: product_id)
         if item
         else
            item = items.build(product_id: product_id)
         end
         item
    end

我的"create.js.erb“

代码语言:javascript
复制
$('#items').html("<%= escape_javascript render(@idea.items) %>");

当我将"format.html {redirect_to :back}“放入def (items_controller)中时,一切正常,但没有AJAX=(

日志

在91毫秒内无法接受的406完成 行动主计长::未知数格式(行动主计长::未知数格式): app/控制器/items_Controller.rb:33:in‘`create’

帮帮我,伙计们。我搜索了整个互联网

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-30 02:44:05

对于那些还在谷歌搜索的人来说..。它帮助我为routes.rb中的ajax操作指定默认值:routes.rb {format:'js'}。

代码语言:javascript
复制
post 'myaction' => 'mycontroller#myaction', defaults: { format: 'js' }
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28257924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档