2017-05-17 1 views
-1

:has_many belongs_to. 레일 내가 모델이 5

Group(has_many students). 
Student(belongs_to groups). 

그룹의 코드입니다 데프 지수의 코드와 데프 group_params이 GroupsController

def index 
    @groups = Group.all 
end 

private 
    def group_params 
     params.require(:group).permit(:name, :course_id) 
end 

에서의 routes.rb

root 'courses#index' 
    resources :students, :teachers, :groups, :courses, :users 

의 코드입니다/index.html.erb

<% @groups.each do |g| %> 
     <tr> 
      <td><%=link_to g.id, group_path(g)%></td> 
      <td><%=link_to g.name, group_path(g)%></td> 
      <td><%=link_to g.course.name, course_path(g)%></td> 
      **<td><%=link_to g.students.name, student_path(g)%></td>** 
<% end %> 

한 그룹에 두 명의 학생을 썼습니다. 한 그룹의 모든 학생들의 이름을 인덱스보기에서 어떻게 볼 수 있습니까? 나는

students_path(g), 

<%students.each do%> 
    <td><%=link_to g.students.name, student_path(g)%></td> 
<% end %>, 

resources :students do 
    resources :groups 
end, 

resources :groups do 
    resources :students 
end 

, g.student.name에 작동하지 않음을 변경하지보십시오. 이 문제를 도와주세요.

답변

0

routes.rb

resources :groups do 
resources :students 
end 

기/index.html.erb

<% @groups.each do |g| %> 
    <tr> 
     <td><%=link_to g.id, group_path(g)%></td> 
     <td><%=link_to g.name, group_path(g)%></td> 
     <td><%=link_to g.course.name, course_path(g)%></td> 
     <% g.students.each do |student| %> 
     <td><%=link_to student.name, student_path(g)%></td> 
     <% end %> 
    </tr> 
<% end %>