开发者

Rails 3 Custom Validation against DB-Entries

I have currently a website which lets every user register, but I want to give out codes,开发者_如何学运维 so that only users with a special code can register. I already worked with validation, but I really need your help for doing this.

At first, I have my form which lets the user register and where the user can input the code. Then I have the User Model, which should containt the validation checks:

validates :registration_codes, :presence => true, ??? => ???

I can get my reg_codes in any form, because I haven't created them yet. Maybe I will just update them manually and hardcode or maybe I will make a model. I don't know. So, what I just need is the validation check which should do something like this:

:registration_code should be code1 or code2 or code3

I have even tried to make a custom method, but I didn't find out how to forward the form input to my method.

Thanks for any help!


I wrote an custom method, which I call by:

validate   :validate_regcode

And then I just search in the DB for the code and check if the result is empty:

def validate_regcode
  regcode_feed = Code.where("regcode = ?", regcode)
  if regcode_feed.empty?
    errors.add(:regcode, "Ihr Registrierungscode ist leider ungültig.")
  end
end

So, at all, it's really simple if you know the way to do it. Maybe there's something even simpler, but I like my way :)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜