如何在
之前保存数字这是我的表:
|products|
int varchar(10)
|id| |num_product|
1 0040
|customers|
int varchar(255)
|id| |name| |state|
1 ABC 0
2 DEF 0
3 GHI 0
4 JKL 1
这是控制器:
def new
@customer = Customer.find(params[:id])
@num= Product.first
@other_value = Customer.count(:conditions=>['state=0'])
end
以下是我的观点:
<% (@num.num_product)+@other_value %>
但它会返回00403
而不是0043
。我试过这个但是我没有403
{}获得00
:
<% (@num.num_product.to_i)+@other_value.to_i %>
我也试过这个但不是正确的方法:
<% "000"+(@num.num_product.to_i)+@other_value.to_i %>
有人可以帮我解决这个问题吗?
答案 0 :(得分:4)
你为什么不这样做:
"%04d" % (@num.num_product.to_i + 1)
给定@num.num_product #=> "0040"
然后:
"%04d" % ('0040'.to_i + 1)
=> "0041"