사용자가 양식에 정보를 입력해야하는 앱을 개발 중입니다. 그것의 일부 필드에 대한 기본 유효성 검사가 비어 있지 않은지 확인합니다.유효성 검사 필드가 작동하지 않습니다.
사용자 모델은 많은 user_entries
has_many :user_entries, dependent: :destroy
을 가지고 있으며 user_entry 모델은 사용자에게 속한
문제가 추가하기 전에 user_entry 모델validates :name, :address, :email, presence: true
에서 검증에 발생
belongs_to :user
이 코드는 잘 작동 user_entries 테이블에 외래 키 user_id, 나는 수 f 문제없이 양식을 작성하고 표에 항목을 추가하십시오. 하지만 사용자에게 항목을 추적 할 수 있도록 user_entries 테이블에서 현재 사용자 ID를 캡처해야합니다.
def create
@user_entry = UserEntry.new(params[:user_entry])
@user_entry.add_comp_connections_from_entered_competition(current_entered_competition)
@user = current_user
@user_entry = @user.user_entries.build
#--etc--#
유효성 검사를 제거하면 처리 할 수 있지만 제거하지 않으려합니다. 외래 키를 제거하면 유효성을 확인할 수 있습니다. 그러나 나는 변화 덕분에 SteveTurczyn에서 언급 한 바와 같이
그냥 .... @ user_entry.user = CURRENT_USER ... – SteveTurczyn
대신의를 추가 할 수 없습니다? @ user = current_user @ user_entry = @ user.user_entries.build –
완벽하게 고맙다. 나는 내가 과장되어 있다고 생각했다. –