1

<div>在 Rails 的表单上有一个可编辑的列表,如下所示:

<div id="article14" style="display: block;">Content one</div>
<div id="article15" style="display: block;">Content two</div>
<div id="article16" style="display: block;">Content three</div>

如果用户对内容进行更改,我想通过我的控制器将该更改发送到新的 Rails 记录中。我已经创建了记录,我只需要应用程序来记录更改而不是原始记录。因此,例如,<div id="article16">Changed content</div>应该将更改保存到@edit.body下面。

 def create
    @doc = Doc.new(params[:doc])
    respond_to do |format|
      if @doc.save
        #make editable version
          if current_user.brand.try(:editable?)
            @doc.articles.each do |article|
              @edit = Edit.new
              @edit.body = article.body
              @edit.article_id = article.id
              @edit.doc_id = @doc.id
              @edit.user_id = current_user.id
              @edit.save
            end
          end
        @doc.create_activity :create, owner: current_user
        format.html { redirect_to share_url(@doc.user.ftp, @doc) }
        format.json { render json: @doc, status: :created, location: @doc }
      else
        format.html { render action: "new" }
        format.json { render json: @doc.errors, status: :unprocessable_entity }
      end
    end
  end

有任何想法吗?也许这是jQuery的一个案例?我不确定。干杯!

4

1 回答 1

0

听起来你想做就地编辑。有许多 gem 可以促进这一点,但是RailsCast使用最好的 gem 来做这件事。

于 2013-05-17T03:33:23.840 回答