我正在使用best_in_place gem编辑余额:

index.html.erb:

<%= best_in_place bankaccount, :balance, :display_with => :number_to_currency %>

但是在编辑后,我得到了一个未格式化的数字(将$ 45更改为46,显示为46)。

如何获得best_in_place以将新值显示为$$$?

Controller :
 respond_to :html, :json
...
def update
    @bankaccount = Bankaccount.find(params[:id])
    if @bankaccount.update_attributes(params[:bankaccount])
      respond_with @bankaccount
    else
      render :json =>  @bankaccount.errors.full_messages, :status => :unprocessable_entity
    end
    # if @bankaccount.update_attributes(params[:bankaccount])
    #       redirect_to @bankaccount, :notice  => "Successfully updated bankaccount."
    #     else
    #       render :action => 'edit'
    #     end
  end

最佳答案

该线程已经被回答,但是我尝试了接受的答案,但是它没有用。

但是,使用lambda再次一切都很好。顺便说一下,R​​ails 4。

<%= best_in_place @text, :body, :type => :textarea, :display_with => lambda{ |v| markdown(v) }, :html_attrs => { :class => 'edit-text-body' }  %>

关于ruby-on-rails-3.1 - best_in_place gem 来编辑货币,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9572349/

10-11 03:01