0

この例と同様の質問があります。私は初心者で、この回答を得る方法について数時間読んでいますが、回答にたどり着けませんでした。助けてくれてありがとう! Kikito からの回答に従って、Users、Photos、Locations、Photo_Relationships のモデルをセットアップしました。私のルートファイルには以下が含まれています:

resources :users 
resources :locations do
  resources :photos
end
resources :photo_relationships

写真をアプリケーションの正しい場所に保存することはできますが、Photo_Relationships モデルを介して複数のユーザー (特に写真の作成者) を写真に割り当てることができません。

class CreatePhotoRelationshipsTable < ActiveRecord::Migration
  def change
    create_table :photo_relationships do |t|
        t.integer :photo_id
        t.integer :user_id
        t.integer :role_id

        t.timestamps
    end

写真コントローラー

  def create
    @location = Location.find(params[:location_id])
    @photo = @location.photos.new(params[:photo])
    @photo.create_photo_relationship(@photo, current_user, 0)
    if @photo.save
        flash[:notice] = "Successfully added your photo"
        redirect_to [@mountain, @photo]
    else
        render :action => 'new'
    end
  end

Photo_Relationships コントローラー

def create
  @relationship = photo_relationships.new(params[:photo][:location])
  @photo.create_photo_relationship()
end

私の現在のエラーは未定義のメソッド「photo_relationship」です。誰かが提供できるどんな助けや指示も大歓迎です。

4

1 に答える 1

0

クラスの名前は ではありPhotoRelationshipませんphoto_relationships

コントローラーの行は次のようになります。

@relationship = PhotoRelationship.new(params[:photo][:mountain])
于 2013-02-14T00:03:27.807 に答える