有一個查詢失敗,因爲範圍正在運行如下查詢:'%'email'%'
內部引號導致問題,我該如何擺脫它們?Rails,從查詢中的活動記錄值附近刪除引號
user.rb (User Model)
#it's checking a text field to see if it contains the email address
@locations = Location.has_permission(self.email)
location.rb (Location Model)
scope :has_permission, lambda { |email| where("locations.permissions LIKE '%?%'",email)}
它似乎工作。有一個問題。 ||是什麼?做?你爲什麼有第二組內部報價? – John
@John:'||'是SQL中的字符串連接運算符,因此''%'|| ? ||在Ruby中,'%'最終與''%'+ email +'%''相同。 –
使用插值法對此有利嗎?還是更安全? –