Ruby on Rails上的可编辑块(与模型无关 - 与SEO相关)

我的SEO人不写代码。他们所热爱的就是创造出好的文字。他们所能做的就是粘贴文本,通过一些不错的形式来做数据库。

问题是有时候他们会问我:我们需要将文本放入页脚中。 Wee需要将其他文字放入页眉。

每当搜索引擎优化人问我时,我都无法编辑代码!

有时文本与模型没有直接关系。我想你会理解我在 CarPerson 模型中创建 footer_block 字段是一个坏主意。

如果有一颗宝石能够:

  1. 通过键从数据库加载文本数据(例如'FOOTER_BLOCK')。让我不要把模型变成一团糟!
  2. 向我们提供SEO人员可以粘贴文本的表单
  3. (会很好)给我们一个WISIWIG编辑器。

PS:这样的功能的一个例子(但不是在Ruby中):我曾经在python/Django中编写代码。我们使用了 django-flatblocks 包 - 它确实符合这3个标准。

0
为你写一个答案
额外 作者 Richard Peck,

1 答案

我不知道有什么宝石可以做到这一点,但希望我可以告诉你如何才能做到这一点


代码块

您可以创建一个名为 code_blocks 的表(和模型)。模式可能如下所示:

code_blocks
id | title | body | created_at | updated_at

这将允许您在此表中创建任意数量的记录,然后从您的应用程序调用它们,而无需特定的控制器操作


显示</强>

你可以这样做:

#app/helpers/application_helper.rb
def code_block(id)
    block = CodeBlock.find(id)
    return block.body
end

这可能效率低下,但它可以让您在页面中包含无论您想要的代码块,而与控制器操作无关

所以,例如,你有一个脚本块,其ID为3,你可以这样写:

<%= code_block(3) %>

修改</强>

这意味着如果你有一个简单的后端表单,你可以设置它,以便按标题列出块,并允许SEO人员用所见即所得的编辑器编辑HTML(将HTML保存在 body 列)

0
额外
谢谢!但我仍然希望是否有帮助我避免编码的宝石(即使是简单的后端)。嘿,我可以使用ActiveAdmin或其他东西! :)
额外 作者 Nikita Hismatov,