作者poga (波卡)
看板Ruby
标题Re: [问题] 如何在新增时候自动带出相关资讯
时间Thu Oct 28 23:00:40 2010
※ 引述《yanggary (羊小排)》之铭言:
: 我现在在做一个订单的系统formnumber是订单编号(20100001...20100002...)
: 每次在新增的时候单号会自动显示在新增编辑页面且不能被修改
: 而datenow是新增订单的日期
: Q1.的意思就是现在在新增的编辑页面没办法显示单号,按下create後才会显示单号
: 我想要在新增编辑时就显示这单号,该怎麽修改程式?
: Q2.的意思是新增後如果要在对某笔订单做修改,按下update後单号又自动加1
: 这样单号就没办法固定
: 如:第一笔订单单号20100001,修改第一笔订单後单号变成20100002
: 再修改一次就变成2010003,要怎麽做才不会让他在update的时候加1
相关的问题一起回答
因为你用的是before_validation,
所以在新增的时候,这个callback还没被跑到,自然没有编号
另外,每次有修改就会重新作一次validation,当然订单也就被重新设一个新的编号
你可以就在new里面直接给订单一个编号,不要用callback
: Q3.datenow是订单新增的日期,在new页面与edit页面我原本是用Date.today
: 显示新增日期,後来想如果新增显示是2010-10-28,如果明天有修改这笔订单
: 日期就会变成2010-10-29,这样就失去订单的可识别性,无法追朔真正建立的日期,
: 後来想说在edit页面改用created_at,这样不管怎麽修改日期还是在2010-10-28,
: 除了我这个笨方法,还有没有其他方式可以做到修改时日期还是维持在新增时候的日期?
: 如有不懂请在告知,谢谢!!
rails本身就会自动设定created_at了,
所以在new的时候应该也不需要额外指定Date.today才对...
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.25.232.14
※ 编辑: poga 来自: 114.25.232.14 (10/29 00:35)