首页 > 解决方案 > 我如何在rails模型上使用ruby中的break

问题描述

如果存在,不创建/保存的最佳方法是什么?我的模型中有以下内容

class Censu < ApplicationRecord
    before_create :check_if_exist


    def check_if_exist
       break if ItemsCensu.exists?(year: @year)
            puts  "Εχεις κανει απογραφη για την χρονια #{@year}"

    end
end

我尝试渲染:索引但仍然无法正常工作,也会中断

如果我把 break 我有以下错误

无效的休息 ,如果存在年份,我该如何停止创建?并将 puts 消息作为警报或错误?

标签: ruby-on-railsruby-on-rails-6

解决方案


只是改变休息与回报

class Censu < ApplicationRecord
    before_create :check_if_exist

    def check_if_exist
       return if ItemsCensu.exists?(year: @year)

       // your other code here
    end
end

推荐阅读