ruby-on-rails – 如何限制模型每天创建一条记录?
发布时间:2020-12-17 03:23:43 所属栏目:百科 来源:网络整理
导读:业务逻辑:用户每天只能为日记创建一个条目.在创建条目之前,它必须查询记录以确定是否已为今天创建条目. 我正在寻找有关解决这个问题的最佳方法的建议.我有一些想法如何在客户端实现它,但我真的想在模型层上进行验证.任何帮助,将不胜感激. 解决方法 在日记帐
业务逻辑:用户每天只能为日记创建一个条目.在创建条目之前,它必须查询记录以确定是否已为今天创建条目.
我正在寻找有关解决这个问题的最佳方法的建议.我有一些想法如何在客户端实现它,但我真的想在模型层上进行验证.任何帮助,将不胜感激. 解决方法
在日记帐表上创建唯一索引:
add_index :journal_entries,[:user_id,:created_on],unique: true 然后,只能创建一个具有给定user_id和date的记录,如果违反了该数据库,数据库将引发异常.请注意,created_on必须是日期列,而不是日期时间. 这是唯一能让它100%确定在没有明确排他锁定的情况下不会重复的方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |