ruby-on-rails - ActiveAdmin 去除花括号内的内容
问题描述
我有一个模型,它有一个模板字符串,稍后将被液体解析,它存储在数据库中,但 ActiveAdmin 的编辑、显示和索引不显示这些字段。
代码:
irb(main):050:0> q = Question.find(4)
Question Load (0.5ms) SELECT `questions`.* FROM `questions` WHERE `questions`.`id` = 4 LIMIT 1
=> #<Question id: 4, question_text: "How happy are you working at {{company_name}}?">
问题.rb
class Question < ApplicationRecord
end
架构.rb
create_table "questions", options: "ENGINE=InnoDB DEFAULT CHARSET=latin1", force: :cascade do |t|
t.text "question_text"
end
在 ActiveAdmin 中显示
我也尝试添加 raw(question_text) ,但没有用。如何将变量与花括号一起显示?即 - 我想在 ActiveAdmin 中查看 {{company_name}}。
解决方案
您可以解析列详细信息。
clumn "Question Text" do |question|
company = Company.find_by_name('abc')
question.question_text.sub! '{{company_name}}', company.name
end
更新
clumn "Question Text" do |question|
"#{question.question_text}"
end
推荐阅读
- node.js - VersionError:没有找到与 id 匹配的文档
- php - HTML & CSS - 模态正在覆盖另一个模态
- python - 报告形状相同的两个数据框之间的值差异/变化
- php - 如何从给定数组中排除一些重复值并将其显示在选择标签中?
- android - onActivityResult 处的空指针异常
- c# - 以圆心为基准画出一定角度的等腰三角形
- linux - 关闭期望脚本而不关闭 ssh 中的会话
- django - Django 迁移引发 TypeError: Unknown option(s) for sync_cassandra 命令
- sql - 如果 sqlite 数据库包含具有相同名称/功能的多行,如何选择特定行
- c# - 如何在需要大量时间的循环中实现多线程方法?