我想在Rails中使用插件系统创建一个应用程序。潜在用户应该能够上传(或更好地从存储库安装)一个插件并安装它,使我的应用程序能够做更多的事情。这应该在没有FTP / SSH /任何低级访问服务器的情况下完成。
那么在Rails 3中应该如何完成任何好的宝石或教程呢?
答案 0 :(得分:0)
你看过http://edgeguides.rubyonrails.org/plugins.html吗?
它似乎与Rails 3不是100%兼容,但它可以帮助您入门。我见过的大多数插件都涵盖了Rails 2。
答案 1 :(得分:0)
我实际上最近刚想到了一个可靠的概念。如果您计划允许用户在ruby中编写插件,那么您希望查看$SAFE
,了解tainting机制并了解eval()ruby代码的安全含义。
如果您信任您的用户,以便自信地允许他们这样做,那就是。
sandboxing in Ruby上还有许多资源(宝石,文章,谷歌搜索) - 您应该自己评估这些资源的可行性和/或安全性。
如果您根本不信任该用户,则应查看writing your own DSL in ruby或实施其他表达功能的方法,而无需直接执行用户提交的代码。
正确地做这样的事情并非易事。