내 레일 응용 프로그램의 편집 프로필보기에서 사용하고있는 collection_select에 이상한 문제가 있습니다. 데이터베이스 IS는 올바른 값으로 업데이트되지만 사용자가 프로필을 편집 할 때 선택 상자에 기본값이 선택되지 않습니다. include_blank => true 또는 a : prompt => true를 사용할 수 없습니다. 부분Collection_Select 기본값 설정 안 함
<%= render :partial => 'player_form' %>
_player_form : 여기
코드를편집보기입니다
<% form_for @user do |f| %>
<p>
<%= f.label :course_id %><br/>
<%= f.collection_select(:course_id, Course.all, :id, :name, {:prompt => "No Home Course"}) %>
</p>
<% end %>
생성 된 HTML :
<p>
<label for="user_course_id">Course</label><br/>
<select id="user_course_id" name="user[course_id]">
<option value="1">Bedford Springs</option>
<option value="2">Down River</option>
<option value="3">King Valley </option>
<option value="4">Test</option></select>
</p>
것은 내가 허가 캉캉를 사용하고 있기 때문에 Cancan이 자동으로 초기화 된 이후 컨트롤러에 비어있는 편집 작업이 있습니다.
@user = User.find(params[:id])
편집 할 행을 추가하려고했는데 아무런 영향을 미치지 않았습니다. 또한이 문제와 관련하여 매우 이상한 점은 부분 편집 양식의 다른 모든 필드가 데이터베이스의 올바른 현재 값으로 채워진다는 점입니다. 또한, 사용자 테이블에는 코스 테이블의 외래 키인 course_id 열이 있으며 콘솔에서 연결을 확인하고 올바른 course_id를 반환합니다. 협회는 내가 가지고 있기 때문에 제대로 설정되어 있습니다. 그러므로 나는 collection_select의 문법에 문제가 있다고 생각하지만 그것이 무엇인지는 잘 모릅니다.
감사합니다.
감사합니다.
또한 console @ user.course_id에서 올바른 값을 반환합니다. 뷰에 @ user.course_id를 표시 할 수도 있습니다. – dbaugh