Rails 3: Создание приложения с внутренней системой плагинов - PullRequest
6 голосов
/ 17 января 2011

Я хочу создать приложение в Rails с системой плагинов. Потенциальный пользователь должен иметь возможность загрузить (или лучше установить из репозитория) плагин и установить его, что позволит моему приложению сделать что-то еще. Это должно быть сделано БЕЗ FTP / SSH / любого низкоуровневого доступа к серверу.

Так есть ли какие-нибудь хорошие гемы или учебники о том, как это должно быть сделано в Rails 3?

Ответы [ 2 ]

0 голосов
/ 17 марта 2011

Я на самом деле совсем недавно думал о твердой концепции для этого сам.Вы хотите взглянуть на $SAFE, рубить механизмы заражения и узнать все о последствиях безопасности для eval () ruby-кода, если вы планируете позволить пользователю писать свои плагины в ruby.

Если вы доверяете своим пользователям до степени уверенности в том, что они могут это сделать, то есть.

Существует также множество ресурсов (гемы, статьи, поиск в Google) по песочнице в Ruby - вы должны сами оценить, насколько это практично и / или безопасно.

Если вы совсем не доверяете пользователю, вам следует написать свой собственный DSL на ruby ​​ илиреализация других способов выражения функциональности без непосредственного выполнения кода, предоставленного пользователем.

Выполнение чего-либо подобного правильно - непростая задача.

0 голосов
/ 17 января 2011

Вы смотрели на http://edgeguides.rubyonrails.org/plugins.html?

Похоже, он не на 100% совместим с Rails 3, но может помочь вам начать.Большинство плагиновых статей, которые я видел, покрывают Rails 2.

...