2012-03-05 7 views
1

これは初心者のための質問ですが、ルビーのドキュメントやGoogleの検索に役立つものはありません。ActiveRecordを使ったデータベースへの書き込み

これは非常に簡単な質問です。どのようにActiveRecordオブジェクトをデータベースにコミットするのですか?

私はuser.rbファイルに2行しか入っていません。

class User < ActiveRecord::Base 
end 

私は2つのフィールドのみ、IDメールを持っているのpostgresでユーザーテーブルを持っています。

サインアップコントローラには次の行があります。

User.new(:email => email) 

それは私が新しいユーザーオブジェクトがうまく作成されていることを前提としてエラーをキックし、それが正しく読んでいると信じて私をリードしている、「電子メール」フィールドを与えられている程度幸せだことはありませんデータベースからのフィールドリストは作成されますが、レコードは作成されません。

答えて

2

あなたがデータベースにオブジェクトを永続化するには、2つのことを行うことができます:あなたは、これはかなりbeginnery質問ですが、それがために何もないということだね

User.create(:email => email) 

User.new(:email => email).save 

かをの恥じ!あなたはおそらくRuby on Rails Getting Started Guideを読むべきでしょう。

+0

多くのおかげで、私もガイドを読んでいます - 私は何年もの間、PHP開発者であったことに精通していたので、多くのRoR 101型ガイドをスキップしました。私が推測するようにルビへの飛躍を開始する必要があります。 – lynks

+0

ここでは、** save **関数を実行した後にUserオブジェクトを使用してid(autoincrement)フィールドを取り戻すことができると仮定します。 – lynks

+0

そうですね、このようなものです。 '' '@user = User.create; @ user.id''' – Veraticus

関連する問題