ruby-on-rails - HAML Bootstrap 4 和 rails - 基于局部变量扩展手风琴
问题描述
我有一个包含课程的 Rails 应用程序。每门课程都有章节,每章都有课程。我正在使用引导手风琴显示当前课程的章节和课程列表,但无法弄清楚如何获取用户正在展开的当前章节,但让其余章节折叠。我尝试在底线下添加渲染课程,尝试了一些 javascript,不同级别的缩进。手风琴工作,但一切都开始扩大。
#accordion
.list-group#scrollable
- @chapters.each do |chapter|
.panel.panel-default
.list-group-item.shadow
%a{"data-parent" => "#accordion", "data-toggle" => "collapse", :href => "#collapse#{chapter.id}"}
= render 'chapters/chapter_preview', chapter: chapter
-if @lesson.chapter_id = chapter.id
.panel-collapse.collapse.show{:id => "collapse#{chapter.id}"}
- chapter.lessons.rank(:row_order).each do |lesson|
.panel-body
- if lesson.eql?(@lesson)
%li.list-group-item.list-group-item-success
= render 'lessons/lesson_student', lesson: lesson
- else
%li.list-group-item.list-group-item-secondary
= render 'lessons/lesson_student', lesson: lesson
-else
.panel-collapse.collapse.in{:id => "collapse#{chapter.id}"}
解决方案
你有一个错字可能导致这个问题
- if @lesson.chapter_id = chapter.id
# should be
- if @lesson.chapter_id == chapter.id
# if lesson belongs_to chapter and chapter has_many lessons you could even get rid of the id:
- if @lesson.chapter == chapter
推荐阅读
- node.js - 如何使用 google-spreadsheet npm 包在标题行下方的现有行之上添加一行?
- bash - 从 GNU Make 中的子 bash 脚本导出环境变量
- authentication - 无法登录Jenkins-无效的用户名或密码错误
- django - Django 存储:使用 2 个媒体源
- swift - 从 NFC mifare 标签 iOS 13 读取 UID
- java - 如何将 QueryDSL 中的动态查询转换为 JOOQ?
- php - PHP + Curl:协商身份验证时连接关闭(HTTP 1.0?)
- sql - 如何从查询中删除特定列 ColdFusion 11
- graphite - 石墨网,如何添加功能?互联网上缺少按钮?
- c# - 通过域而不是 IP 连接到 SFTP 失败