2016-11-14 47 views
1

我无法获得产品的价格显示在页面上。每当我更新价格时,它似乎都不能保存。为什么我的价格不会出现在我的产品上?

这是我的迁移文件,我在其中向产品添加了价格(整数)。

class AddPriceToProduct < ActiveRecord::Migration[5.0] 
    def change 
    add_column :products, :price, :integer 
    end 
end 

这里就是我试图说明价格:

<p id="notice"><%= notice %></p> 

<%= image_tag @product.image.url(:large) %> 

<p> 
    <strong>Title:</strong> 
    <%= @product.titel %> 
</p> 

<p> 
    <strong>Description:</strong> 
    <%= @product.beschrijving %> 
</p> 

<p> 
    <strong>Price:</strong> 
    <%= @product.price %> 
</p> 
<%= link_to 'Edit', edit_product_path(@product) %> 

<%= link_to 'Destroy', @product, :method => :delete, :confirm => "Are you sure?" %> 

<%= link_to 'Back', products_path %> 

我希望有人能帮助我解决这个问题, 真诚阿伦德

+1

这么多的问题:你是通过强大的参数允许价格是多少?你有没有运行迁移文件?你重新启动了服务器吗?你有什么尝试?发生什么事?日志显示什么? – engineersmnky

+0

你在哪里更新价格?可能你不能得到它,因为它是零,不是0,如果你想使用默认值,你需要为你的迁移添加',default:0'(如果你已经运行了迁移,你需要重置数据库) –

+0

你如何更新价格?你确定它正在工作吗?因为它认为一切都很好。 –

回答

1

它解决了,感谢engineersmnky。我忘了通过参数来允许价格。

这里是我所需要的参数

def product_params 
     params.require(:product).permit(:title, :description, :price, :image) 
    end 
+2

你可以扩大吗?也许后来有人有类似的问题,尝试添加代码,你忘了把参数。这对后面的人有所帮助 –

+2

值得在这里添加解决问题的代码,而不是这个* teaser *答案。 – tadman

相关问题