LINUX.ORG.RU

История изменений

Исправление special-k, (текущая версия) :

какие, например?

Можешь присоединиться к поиску Исправление уязвимостей в Ruby on Rails (комментарий)

А еще меня позабавило это http://mourk.com/2008/02/14/monkey-patching/

Существует замечательный, но не лишенный недостатков, фреймворк для веб-приложений — Django. В нем уже существует модель пользователя (User), используемая для авторизации, разграничения прав доступ, хранения самих пользователей... Естественно, эту модель нужно использовать. На практике оказывается, что у пользователя могут быть дополнительные атрибуты (не предусмотренные фреймворком), например, пол или телефон. Первое, что хочет сделать здравомыслящий разработчик, — написать новый класс пользователя, унаследовав его от джанговского. Увы, один из главных минусов django — его ORM не поддерживает наследование моделей, то есть модель то создастся... но она всего лишь продублирует все поля родителя в новую таблицу базы данных, создав тем самым избыточность.
выход один — monkey patching!

Все реально так плохо?) Вы в курсе, что наследование модели в activerecord (и не только!), это не то что нормально, это нужно делать, и даже реализован полиморфизм, чтобы хранить разные объекты в одной таблице.

Исходная версия special-k, :

какие, например?

Можешь присоединиться к поиску Исправление уязвимостей в Ruby on Rails (комментарий)

А еще меня позабавило это http://mourk.com/2008/02/14/monkey-patching/

Существует замечательный, но не лишенный недостатков, фреймворк для веб-приложений — Django. В нем уже существует модель пользователя (User), используемая для авторизации, разграничения прав доступ, хранения самих пользователей... Естественно, эту модель нужно использовать. На практике оказывается, что у пользователя могут быть дополнительные атрибуты (не предусмотренные фреймворком), например, пол или телефон. Первое, что хочет сделать здравомыслящий разработчик, — написать новый класс пользователя, унаследовав его от джанговского. Увы, один из главных минусов django — его ORM не поддерживает наследование моделей, то есть модель то создастся... но она всего лишь продублирует все поля родителя в новую таблицу базы данных, создав тем самым избыточность.
выход один — monkey patching!

Все реально так плохо?) Вы в курсе, что наследовать модели в activerecord (и не только!), это не то что нормально, это нужно делать, и даже реализован полиморфизм, чтобы хранить разные объекты в одной таблице.