モジュール: Mongoid::Persistable::Createable::Classメソッドs

定義:
lib/mongoid/persistable/creatable.rb

インスタンス メソッドの概要を折りたたむ

インスタンス メソッドの詳細

# create (属性 = nil、 & ブロック) =ドキュメント|配列 <ドキュメント>

新しいドキュメント を作成します。 これにより、新しいドキュメントがインスタンス化され、1 回の 呼び出しに挿入されます。 保存が渡されたかどうかにかかわらず、常にドキュメントを返します。

例:

新しいドキュメント を作成します。

Person.create(:title => "Mr")

複数の新しいドキュメントを作成します。

Person.create({ title: "Mr" }, { title: "Mrs" })

パラメーター:

  • 属性 ハッシュ | 配列 (デフォルトはnil

    作成する属性、または複数のドキュメントの複数の属性の配列。

次の値を返します。

  • (Document | Array<Document>)

    新しく作成されたドキュメント。



144
145
146
147
148
149
150
151
152
153
154
# ファイル 'lib/mongoid/永続的/creatable.rb' 行144

デフォルト create(属性 = nil, &ブロック)
  _creation 行う
    場合 属性.is_a?(::配列)
      属性.map { |attrs| create(attrs, &ブロック) }
    else
      doc = 新着情報(属性, &ブロック)
      doc.保存
      doc
    end
  end
end

#作成します。 (Atlas Triggers = nil, &lock) = nil, &lock) =ドキュメント|配列 <ドキュメント>

新しいドキュメント を作成します。 これにより、新しいドキュメントがインスタンス化され、1 回の 呼び出しに挿入されます。 保存が渡されたかどうかにかかわらず、常にドキュメントが返されます。検証に失敗した場合はエラーが発生します。

例:

新しいドキュメント を作成します。

Person.create!(:title => "Mr")

複数の新しいドキュメントを作成します。

Person.create!({ title: "Mr" }, { title: "Mrs" })

パラメーター:

  • 属性 ハッシュ | 配列 (デフォルトはnil

    作成する属性、または複数のドキュメントの複数の属性の配列。

次の値を返します。

  • (Document | Array<Document>)

    新しく作成されたドキュメント。



171
172
173
174
175
176
177
178
179
180
181
182
# ファイル 'lib/mongoid/永続的/creatable.rb' 行171

デフォルト 作成します。(属性 = nil, &ブロック)
  _creation 行う
    場合 属性.is_a?(::配列)
      属性.map { |attrs| 作成します。(attrs, &ブロック) }
    else
      doc = 新着情報(属性, &ブロック)
      doc.fail_due_to_validation。 ただし、 doc.insert.errors.空の場合
      doc.fail_due_to_customback(:createます。) 場合 doc.new_record?
      doc
    end
  end
end