photo_albums
のユーザーIDcurrent_user
とアルバムタイトル「PostsAlbum」を含む行をデータベースのテーブルに追加したいと思いbefore_create
ます。
- ユーザーは多くのPhotoAlbumsを持っています
- PhotoAlbumはユーザーに属しています
before_create :build_profile
プロファイルテーブルにユーザーの個人情報用の空の行を作成するために使用して、同様のことを実現します。このコードは私のユーザーモデルの中にあります。
私は似たようなことを達成したいのですが、私のphoto_albums
テーブルで。ユーザーの作成時に、photo_albums
すべてのマイクロポスト関連の画像を保存するアルバムをテーブルに作成します。ユーザーの作成時に、ユーザーIDを含む行が必要album title = "post album"
です。
モデルスニペット
class User < ActiveRecord::Base
has_one :profile, :autosave => true
has_many :photo_albums
has_many :microposts
before_create :build_profile
コントローラーのcreate
アクション
def create
@user = User.new(params[:user])
respond_to do |format|
if @user.save
login @user
UserMailer.join_confirmation(@user).deliver
format.js { render :js => "window.location = '#{root_path}'" }
else
format.js { render :form_errors }
end
end
end
これどうやってするの?ユーザーがフォトアルバムをたくさん持っているので、使用できないことに注意してくださいbuild_photo_album
。ガイドの情報を読みましたが、それでも理解できません。解決策をいただければ幸いです。