首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为Heroku安装Radiant扩展?

如何为Heroku安装Radiant扩展?
EN

Stack Overflow用户
提问于 2011-02-23 07:00:11
回答 1查看 330关注 0票数 1

我还没有找到任何有用的东西。我知道Heroku不允许子模块/扩展,所以为了安装它们,人们需要做一些替代操作。

我的例子是Radiant Mailer。通常,要安装此程序,我会执行以下操作:

代码语言:javascript
复制
./script/extension install mailer

有什么替代方案可以让这在Heroku上工作?

I have tried this already.

我注意到我的问题仍然存在,因为即使我rm'd和wget'd回来了,git status仍然不承认它的存在。

EN

回答 1

Stack Overflow用户

发布于 2011-02-23 08:04:29

好的,这是我找到的最好的方法。尽管证明我是错的:

手动安装扩展,如下所示:

代码语言:javascript
复制
cd /path/to/radiant/vendor/extensions
wget http://github.com/saturnflyer/radiant-help-extension/tarball/master
tar xzvf saturnflyer-radiant-help-extension-*.tar.gz
mv saturnflyer-radiant-help-extension-* help
cd /path/to/radiant
rake radiant:extensions:help:migrate
rake radiant:extensions:help:update

这里的特别说明和我的问题的引用链接中缺少的是:

如果您使用Radiant的内置./script/extension install命令或Ray,您可以忽略此部分,因为它仅适用于手动安装。

为了正确加载扩展,Radiant需要扩展的目录名与扩展的(类)名称相匹配。

匹配规则是标准的Rails camelcase <→snakecase规则。例如,对于名为“foo”的扩展名,扩展名目录名称必须命名为“foo”。对于名为“FooBar”的扩展名,目录名必须为“foo_bar”。如果您不遵循此约定,Radiant将无法加载扩展,应用程序也不会启动。迁移数据库时会出现错误,如下所示:

代码语言:javascript
复制
Could not load extension from file: some_extension.
#<NameError: uninitialized constant SomeExtension>

如何知道扩展的真实名称?为此,请查看扩展目录中名称以“_extension.rb”结尾的文件。这是扩展的主要加载文件。扩展名的真实名称是结尾之前的名称。在前面的示例中,该文件将分别称为“foo_extension.rb”和“foo_bar_extension.rb”。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5085087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档