2013-09-30 3 views
1

나는 기능을 구현하기 위해 노력하고, 프로젝트에서 일하고 있어요 모델링 :이 비디오는기능 문제

내 협회

class Video < ActiveRecord::Base 
    belongs_to :playlist 
    end 

    class User < ActiveRecord::Base 
    has_many :playlists 
    end 

    class Playlist < ActiveRecord::Base 
    has_many : videos 
    belongs_to :user 
    end 

내가 생성됩니다 마이그레이션이 개체를 포함하는 재생 목록의를 CRUD에 대한 리소스로 재생 목록을 만들었습니다.

여기 내 딜레마가 있습니다. 사용자가 만든 재생 목록에 비디오 객체를 추가 할 수 있도록 컨트롤러 수준에서 구현하는 방법을 알 수 없습니다. 내 생각을 프로세스에서 사용자가 만든 재생 목록 배열 및 내 재생 목록 모델에서 비디오 및 범위를 검색 할 수있는 메서드를 추가합니다 current_user 및 마지막으로 새 배열을 밀어 저장합니다. 그러나 나는 ' 튜토리얼에서 처음부터 기능을 작성하는 것으로 전환하려고합니다.

ps. accepted_nested_attributes가 이것을 구현하는 실제 또는 실행 가능한 경로인지 여부는 알 수 없습니까? 도움이 될 것입니다.

답변

1

귀하의 모델 :

class Video < ActiveRecord::Base 
    belongs_to :playlist 
    has_one :user, through: :playlist 
end 

class User < ActiveRecord::Base 
    has_many :playlists 
    has_many :videos, through: :playlists 
end 

class Playlist < ActiveRecord::Base 
    has_many :videos 
    belongs_to :user 
end 

귀하의 경로 :

resources :users do 
    resources :playlists do 
    resources :videos 
    end 
end 
# the generated routes: 
# /users/<user_id>/edit 
# /users/<user_id>/playlists/<playlist_id>/edit 
# /users/<user_id>/playlists/<playlist_id>/videos/<video_id>/edit 
# etc. 

그래서 다음 URL :

  • /users/1/playlists는 # 1 사용자의 모든 재생 목록을 나열합니다;
  • /users/1/playlists/12/videos 내가 비디오 이미 관리자 및 메신저 만든이, 12
+0

덕분에 내가 그것을 생성하지 않고 재생 목록에 동영상을 추가하는 방법을 대답, 또 하나의 문제에 대한 재생 목록 번호의 모든 동영상을 나열합니다 사용자가 라이브러리에서 하나의 비디오를 선택하여 자신의 재생 목록에 추가하는 방법을 알아 내려고합니다. –

+0

해당 동영상의 playlist_id 속성 만 업데이트하면됩니다.) – MrYoshiji