레일즈에서 simple_form을 사용하여 특정 이벤트를 만듭니다. 새 이벤트를 만들려면 사용자로 로그인해야합니다. 양식은 사용자에게 이벤트 이름, 시작 날짜 및 종료 날짜를 입력하도록 요청합니다. 사용자가 제출 단추를 클릭하면 양식에서 데이터베이스의 user_id 특성을 자동으로 업데이트합니다.양식에서 submit을 클릭하면 레일스가 데이터베이스 속성을 자동으로 업데이트합니다.
지금 데이터베이스에서 user_id 필드는 항상 null로 설정됩니다. 나는이 속성이 필요하지만 설정 될 :
events.user_id = current_user.id
여기에 대한 추가 정보를 원하시면 내 이벤트 테이블 :
참고 : 나는 수동으로 데이터베이스에 USER_ID 값을 입력.
질문 : 사용자가 제출을 클릭하면 데이터베이스 속성을 어떻게 업데이트합니까? 아니면 새로운 이벤트가 생성 될 때 항상 user_id를 설정하는 기본 방법이 있습니까? new.html.erb 이벤트가 이벤트 컨트롤러에 만드는 방법에
<%= simple_form_for(@event) do |f| %>
<%= f.error_notification %>
<div class="form-inputs">
<%= f.input :name %>
<%= f.input :start_at %>
<%= f.input :end_at %>
</div>
<div class="form-actions">
<%= f.button :submit %>
</div>
<% end %>
고맙습니다! 그게 효과가 있었어. ('def create method')에'@event.user_id = current_user.id'를 추가했습니다. – Rahul