rails 5最好只更新一些<li>

时间:2017-03-25 14:06:33

标签: ruby-on-rails ruby ruby-on-rails-5 best-in-place

这很奇怪。我正在使用&#34;最佳就地&#34; gem与无序列表相结合,每个列表项包括“最佳就地”列表。帮手。列表中的第一项工作正常,但后续列表项有问题。这是我的部分代码(views / _dash.html.erb):

<table class = 'table-hover'>
<li>


    <tr>
        <th class = 'name'> <%= best_in_place offer, :plan_name, :type => :input %> </th>
        <th class = 'name'> <%= best_in_place offer, :price, :type => :input %> </th>
        <th class = 'bids'> Bids(<%= @user.active_bids.count %>) </th>
    </tr>

</li>

相关视图中的代码:

<ul class = "offers">
  <%= render @offers %>
</ul>

<%= will_paginate %>

列表中的第一项工作正常。每个字段显示正确的信息,可编辑,并且编辑在数据库中保留。第二个项目显示正确的字段,可编辑,更新信息。但是,刷新后,字段将恢复为原始值,并对所做的编辑进行折扣。列表中的其他项目最初显示正确的字段,但有些不可编辑,有些可编辑但不更新信息,有些是可编辑的,但编辑的信息不会保留。 这是相关控制器的代码:

def update
@user = current_user
@offer = Offer.find params[:id]
if @offer.update_attributes!(offer_params)
  respond_to do |format|
    format.html { redirect_to( @offer )}
    format.json { render :json => @offer }
  end
else
  respond_to do |format|
    format.html { render :action  => :show } # edit.html.erb
    format.json { render :nothing =>  true }
  end
end

def dash
@user = current_user
@offers = current_user.offers.paginate(page: params[:page])
respond_to do |format|
  format.html
  format.json {render :json => @offer}
end

我的application.js看起来像这样:

//= require jquery
//= require jquery.purr
//= require best_in_place
//= require 'rest_in_place'
//= require jquery_ujs
//= require best_in_place.jquery-ui
//= require bootstrap
//= require turbolinks
//= require_tree .

这是我的offers.coffee文件:

jQuery ->
   $('.best_in_place').best_in_place()

如果您需要更多信息,如果我错过了一些明显的信息,或者是否有修复,请告诉我。 SOS。

1 个答案:

答案 0 :(得分:0)

好的,修好了。这是我之前的一个过滤器的问题。对那些人抱歉。