Ich habe eine einfache Show-Methode, die alle Nachrichten in einer Konversation rendern muss.rails rendering Datenbankinformationen in html
Alles ist in meinem Code einfach, ich eine Show-Methode haben, die zu diesem HTML (show.html.haml) geht:
%section#list
= @conversation.messages.each do |message|
.row
= message.content
= message.participant.user_id
Und wenn ich zu dieser Show Seite gehen, ich habe meine Inhalte, aber ich habe auch eine zufällige Zeile von der Datenbank (mein HTML enthält nichts anderes). Hier ist, was ich bekommen: (. I ein Leerzeichen hinzugefügt direkt neben den < und> Zeichen sonst würde SO einfach machen, aber sie sind nicht hier im original [#])
This is a test 1
[#< MyghtDefaultMessenger::Message id: 1, content: "This is a test", deleted: false, participant_id: 1, created_at: "2017-02-13 14:52:45", updated_at: "2017-02-13 14:52:45" >]
Hier ist meine Controller-Methode in conversation_controller:
def show
@conversation.messages.order(:created_at)
end
und die einzige Besonderheit ist, dass mein Gespräch viele Teilnehmer hat, meine Teilnehmer viele Nachrichten haben, und ich erhalte die Nachrichten eines Gesprächs durch die Teilnehmer.
Nie verwendet HAML, so ist dies eine Vermutung. Ich denke, es ist wegen dieser '=' in '= @ conversation.messages.each do | message |'. In ERB wird '=' nicht verwendet, wenn Sie beispielsweise nicht die Ausgabe dieses bestimmten Ruby-Codes drucken möchten. 'Jeder' Block. – Sajan