Ruby on Railsで新しいものがあり、前回と全く同じようにブロックされています。私はUserテーブル、Courseテーブル、Markテーブルを持っています。 私は、user_id、course_id、および成績でマークを作成できます。私のモデルでデータがデータベースに存在するかどうかを確認してください。
は私が持っている:私は私のフォームで、新しいマークを作成したとき
/* Mark model */
class Mark < ActiveRecord::Base
belongs_to :user
belongs_to :course
end
/* Course model */
class Course < ActiveRecord::Base
has_many :marks
end
/* User model */
class User < ActiveRecord::Base
has_many :marks
end
だから私がやりたいことは、私は自分のフォームが消えると、ボタンが破棄表示されることをしたいです!このように:
<% if @mark.course_ids.include?(@course.id) and @mark.user_ids.include?(user.id)
# Button destroy
<% else %>
<%= form_for Mark.new do |f| %>
<%= hidden_field_tag :course_id, @course.id %>
<%= hidden_field_tag :user_id, user.id %>
Grade: <%= number_field_tag :grade, nil, min: 0, max: 100 %>
<%= f.submit %>
<% end %>
<% end %>
目標は、しかし、ここで明らかにmark.course_idsとする@ mark.user_ids @ ..マークが直前に追加されたときにフォームを避けるためですが存在しません!
ありがとうございました!
_ - あなたは別の質問を参照しているの?もしそうなら、リンクを提供してください。 – Stefan
はい、もう1つはこれでした:[here](https://stackoverflow.com/questions/43348313/rails-check-if-relationships-exist-in-database) –
'@マーク'には 'course_id'と' user_id '。したがって、あなたは '@ mark.course_id == @ course.id && @ mark.user_id == user.id'と書くことができます。 –