rails 在 html 中呈现数据库信息
rails rendering database information in html
我有一个简单的显示方法,它必须呈现对话中的所有消息。
我的代码中的一切都是基本的,我有一个用于此 HTML (show.html.haml):
的显示方法
%section#list
= @conversation.messages.each do |message|
.row
= message.content
= message.participant.user_id
当我转到这个显示页面时,我有我的内容,但我也有来自数据库的随机行(我的 HTML 不包含任何其他内容)。这是我得到的:
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" >]
(我在 < 和 > 符号旁边添加了一个空白 space 否则 SO 只会呈现,但它们不在原始位置。[#] )
这是我在 conversation_controller 中的控制器方法:
def show
@conversation.messages.order(:created_at)
end
唯一的特点是我的对话有很多参与者,我的参与者有很多消息,我通过参与者获取对话的消息。
您需要将 =
更改为 -
=
打印评估代码的结果
-
只会评估它
将代码更改为
%section#list
- @conversation.messages.each do |message|
.row
= message.content
= message.participant.user_id
您得到的第二个输出是 @conversation.messages.each do |message|
计算后返回的结果。
注意: 每当您只需要评估例如each
、if - else
、在 haml 中分配变量
我有一个简单的显示方法,它必须呈现对话中的所有消息。
我的代码中的一切都是基本的,我有一个用于此 HTML (show.html.haml):
的显示方法%section#list
= @conversation.messages.each do |message|
.row
= message.content
= message.participant.user_id
当我转到这个显示页面时,我有我的内容,但我也有来自数据库的随机行(我的 HTML 不包含任何其他内容)。这是我得到的:
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" >]
(我在 < 和 > 符号旁边添加了一个空白 space 否则 SO 只会呈现,但它们不在原始位置。[#] )
这是我在 conversation_controller 中的控制器方法:
def show
@conversation.messages.order(:created_at)
end
唯一的特点是我的对话有很多参与者,我的参与者有很多消息,我通过参与者获取对话的消息。
您需要将 =
更改为 -
=
打印评估代码的结果-
只会评估它
将代码更改为
%section#list
- @conversation.messages.each do |message|
.row
= message.content
= message.participant.user_id
您得到的第二个输出是 @conversation.messages.each do |message|
计算后返回的结果。
注意: 每当您只需要评估例如each
、if - else
、在 haml 中分配变量