我需要创建一定数量的UUId记录(基于下拉列表的选择)并将它们保存在数据库中。现在我只生成一个唯一ID。这可以通过这种方式在模型中完成吗?或者我需要为此编写帮助文件吗?
def generate_unique_token=(value)
self.secret = Base64.encode64(UUIDTools::UUID.random_create)[0..8]
end
我的控制器:
def create
@secretcode = Secretcode.new(params[:secretcode])
@user = User.new(params[:user])
@secretcode.user_id = @user
@secretcode.generate_unique_token = params[:secretcode][:secret]
if @secretcode.valid?
@secretcode.save
redirect_to secretcodes_path
else
render 'new'
end
end
我的观看页面
<%= form_for(@secretcode) do |f| %>
<%= f.select(:secret, options_for_select([['1',1], ['10',10], ['20',20],['50',50]['100',100]])) %>
<%= render 'layouts/error' %>
<%=f.label :secret%>
<%= f.hidden_field :user %>
<%=f.submit :generate %>
<% end %>
答案 0 :(得分:0)
是的,它应该这样做:)
助手应该有一些方法可以返回只能在视图中使用的数据(html内容等)。在这里,您将生成一个令牌,该令牌将保存在模型的该字段中。 你应该保持原样