0

コントローラーのアクションに興味があります。ネストされたパラメーターの簡単な検証を行うにはどうすればよいですか?

def create
# validate incoming post request
errors = Array.new
person = params[:person]
event  = params[:event]

errors << "person email should not be empty" if person[:email].blank?
errors << "person name should not be empty"  if person[:name].blank?
errors << "event name should not be empty"   if event[:name].blank?

この種の小切手はバーフィングです。ネストされたjsonパラメーターをスキャンしようとしているので、たとえば投稿リクエストを作成します

    "person":
            {
                    "email":"foo@gmail.com",
                    "name":"foo"
            },

ネストされた名前があるため、これは正常に検証されます。ネストされた値なしでリクエストを行うと、バーフします。ネストされた値をチェックする条件を記述し、それが空の場合にのみエラー値を詰め込むにはどうすればよいでしょうか。それ以外の場合、ネストされた値がない場合は、通常どおり続行します。

4

1 に答える 1