Alle Datensätze auswählen, wenn Datensatz eine der IDs von Array @ h
Guten Morgen Überlauf.
Ich habe ein Problem beim Versuch, alle auszuwählen.Treatments
, die eine der IDs in einem Array mit dem Namen @ gespeichert hab@problem
.
Hier ist mein Treatments-Controller.
@problem = Remedy.find_by_sql(["SELECT id FROM remedies WHERE LOWER(\"remedyName\") LIKE?", "%#{params[:searchremedy]}%".downcase])
query = "SELECT * FROM treatments INNER JOIN remedies_treatments on treatments.id = remedies_treatments.treatment_id WHERE remedies_treatments.treatment_id LIKE ?"
@pretreatments = Treatment.find_by_sql([query, @problem])
Dies ist ein Fehler von der Konsole
ActiveRecord::StatementInvalid (PG::SyntaxError: ERROR: syntax error at or near ","
LINE 1: ...d WHERE remedies_treatments.treatment_id LIKE 233,234,224
Der 'LIKE'-Operator ist wahrscheinlich nicht das, was ich für das benötige, was ich tun möchte. Ich habe versucht, den ANY-Operator zu verwenden, aber auch ohne Erfolg. Hat das Problem damit zu tun, dass es sich um ein Array von ganzen Zahlen handelt?
as Behandlungsmodel
class Treatment < ActiveRecord::Base
has_and_belongs_to_many :remedy
end
The Remedy Model.
class Remedy < ActiveRecord::Base
has_and_belongs_to_many :treatments, dependent: :destroy
end
Es gibt einen Follow-up-Beitrag, in dem mein Problem behoben wurdeHie