Für normale Spalten können Sie über die Klassenmethode columns
erhalten. Assoziationen können jedoch etwas ganz anderes genannt werden, wenn die Option foreign_key
in der Beziehungsmethode festgelegt ist. Zum BeispielSo erhalten Sie ActiveCord Assoziationen über Reflexion
class Post
has_many :comments, :foreign_key => :message_id # this is a contrived example
end
gegeben, wenn ich Post.column_names
habe ich bei message_id
bekommen könnte, aber ist es eine Möglichkeit, comments
zu bekommen?
Genau das, was ich gesucht habe, danke :) –
FYI Jungs, Reflexionen gibt nur einen Hash zurück, nicht ein HashWithIndifferentAccess. Die Schlüssel des Hashes .reflections sind also entweder ein Symbol oder eine Zeichenkette, je nachdem, was in der Modelldefinition steht. Das hat mich einfach gestolpert, weil ich dachte, es wäre entweder oder. – taelor
Wie MCB in seiner Antwort in Rails 4.2 sagte, sagst du 'Post.reflections [" comments "]' stattdessen –