我刚开始使用 Slim,在向 View 添加 if 条件时不断收到语法错误。我向用户模型添加了一个实例方法,以便可以在 View 中运行此条件。
_conversation.html.slim:
- if user.paid?
- sender = conversation.last_sender
- message = conversation.last_message
- receipts = conversation.receipts.recipient(@user).is_unread
- is_unread = receipts.count > 0 ? true : false
.outer
div.converation class="#{is_unread == true ? 'unread' : 'read'}" onclick="#" data-href="#{conversation_path(conversation)}"
.col_1
img alt="" src="#{is_unread == true ? '/assets/un_read.png' : '/assets/read.png'}" /
span.conversation_avatar
=link_to "/profile/#{sender.id}" do
img alt="" src="#{sender.avatar.image_url(:avatar)}" /
h5 = sender.username
strong
= sender.age
',
= sender.gender
',
= sender.sexuality
small
br
= sender.location.city
',
= sender.location.state
.col_2
span = message.subject
p = message.body
.col_3
strong = extract_date(message.created_at)
small = extract_time(message.created_at)
form action="#"
fieldset
input type="checkbox" class="conversation_checkbox"
- else
Text would go here
最佳答案
缩进在Slim中非常重要。您没有在第一行中缩进任何内容,if user.paid?
;您需要这样做,否则您将生成一个没有正文的 if
语句。
关于ruby-on-rails - 语法错误意外的keyword_ensure,期望keyword_end,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24719749/