我有两个模型,ParentProfile
和RoomParentAssignment
:
class ParentProfile < ActiveRecord::Base
has_many :room_parent_assignments
和
class RoomParentAssignment < ActiveRecord::Base
belongs_to :room_parent_profile, class_name: 'ParentProfile', foreign_key: 'parent_profile_id'
我想检索否 ParentProfile
的所有room_parent_assignments
条记录。我正在寻找类似下面的陈述(不用说,无效):
@non_room_parents = ParentProfile.where(!room_parent_assignments.present?)
我该怎么做?
答案 0 :(得分:2)
以下查询应该
if (character.matches("[[\\]^_`]")){
isValid = false;
}
答案 1 :(得分:1)
使用以下代码:
parent_ids = RoomParentAssignment.select(parent_profile_id)
@non_room_parents = ParentProfile.where.not(:id => parent_ids)
答案 2 :(得分:0)
这里有两个选项:
选项1
@non_room_parents = ParentProfile.where.not(id: RoomParentAssignment.all.map(&:parent_profile_id))
选项2
@non_room_parents = ParentProfile.where("id NOT IN (?)", RoomParentAssignment.all.map(&:parent_profile_id))
两者都等于没有父母的房间。