我希望有一个下降值,包含值10%20%30%,所以直到100.
在红宝石中它可以通过
(10..100).step(10) { |i| p i }
Run Code Online (Sandbox Code Playgroud)
我该如何将其转换为选择标签?
我试过了:
<%=p.select :thc, options_for_select((10..100).step(10) {|s| ["#{s}%", s]})%>
Run Code Online (Sandbox Code Playgroud)
但这是打印 10 11 12 13....100
我有一个字符串,"1/16" 我想将其转换为浮点数并乘以它45.但是,我没有得到预期的结果.
我正在努力 script/console
>> "1/16".to_f
=> 1.0
>> "1/16".to_f*45
=> 45.0
Run Code Online (Sandbox Code Playgroud)
我怎样才能得到理想的结果 2.81
更大的图片:我有这样的下拉:
<%=select_tag :volume, options_for_select(["", "1 g", "1/16 oz", "1/8 oz","1/4 oz",
"1/2 oz", "1 oz", "1/8 lb", "1/4 lb", "Single", "Multi 5" ], "N/A") %>
Run Code Online (Sandbox Code Playgroud)
每当用户选择oz值时,我想将它乘以45
我这样做:
first, *rest = params[:volume].to_s.split(/ /)
if rest.first=="oz"
@indprodprice = @prods.orig_price.to_i*first.to_f*28.3495
else
@indprodprice = @prods.orig_price.to_i*first.to_f*453.59237
end
Run Code Online (Sandbox Code Playgroud) 我有一个产品和类别表.类别has_many产品和产品belongs_to类别
当我在控制台沙盒中工作时,我可以通过以下方式轻松获得产品所属的类别:
@p = Product.find(29)
@p.category
Run Code Online (Sandbox Code Playgroud)
但是,在产品的编辑页面中,我无法获得它所属的类别.
<% form_for :product, @products do |p| %>
<%= p.error_messages %>
<td><%=label "category", "Category"%></td>
<td><%=p.select :category_id, options_for_select(
@categories.map {|s| [s.name, s.id]},
["#{p.category.id}"])%></td>
Run Code Online (Sandbox Code Playgroud)
所以基本上我正在尝试为包含所有类别的下拉列表的产品编辑页面,但我希望预先选择当前类别.
我得到的错误是:
undefined method `category' for #<ActionView::Helpers::FormBuilder:0xbb35f64>
Run Code Online (Sandbox Code Playgroud) 我正在Heroku上部署一个应用程序.虽然部署的经验很好,但我很难修复.
首先autoincrement,在heroku数据库和我的数据库之间,ID都被搞砸了.因此,在部署之前,我必须从本地应用程序中删除所有数据,然后将我的数据库推送到heroku.如果我不这样做,那么在尝试在heroku应用程序上添加记录时,我会遇到重复的键错误.有没有办法控制轨道中的自动增量id?
第二件事,当heroku app上有错误时.我看到自定义500错误页面.We're sorry, but something went wrong(500).有没有办法显示某种错误信息呢?或者我必须依赖于heroku日志?这只是为了开发,所以如果发生一些错误,我只想在页面上看到它.至少有一部分......
我是Heroku和Rails的新手