Я строю заявку домовладельца MGT. Но у меня возникла проблема - я хочу индексировать запросы только в том случае, если house.id
(значение ассоциации) соответствует текущему пользователю.
В настоящее время у меня это работает, в зависимости от того, создал ли его пользователь. Но я бы хотел, чтобы домовладелец видел все запросы, связанные с их недвижимостью.
requests_controller.rb:
def index
unless current_user.estate_agent?
@requests = Request.where(user_id: current_user).search(params[:search])
else
@requests = Request.search(params[:search])
end
end
request.rb
class Request < ActiveRecord::Base
belongs_to :user
belongs_to :house
def self.search(search)
key = "%#{search}%"
if search
where('description LIKE ? OR title LIKE ?', key, key)
else
all
end
end
end
house.rb
class House < ActiveRecord::Base
belongs_to :user
belongs_to :tenant
has_many :requests
belongs_to :contract
mount_uploader :energy, EnergyUploader
validates_presence_of :house_title, :description, :doorno, :postcode, :price, :bedroom, :house_type
def full_house_name
"#{doorno} #{house_title}"
end
def self.search(search)
key = "%#{search}%"
if search
where('doorno LIKE ? OR house_title LIKE ? OR price LIKE ? OR postcode LIKE ? OR house_type LIKE ? OR bedroom LIKE ?', key, key, key, key, key, key)
else
all
end
end
end