Веб-фреймворк с действительно хорошим модулем администратора / CRUD? - PullRequest
1 голос
/ 16 ноября 2011

Лоты (если не большинство) текущих веб-платформ предоставляют модуль администратора для основных операций CRUD, но я нахожу те, которые, как я знаю, обычно очень ограничены ...

Итак, мой вопрос: какие веб-фреймворки предоставляют лучший бэкэнд администрирования ?

Под лучшим я имею в виду:

  • Доменные объекты, которые могут быть в значительной степени полиморфными. Атрибуты / отношения, определенные в классе, появляются при редактировании записи / экземпляра любого из его подклассов (и подклассов, и под-подклассов). подклассы и т. д.).

  • Абстрактные классы. Можно иметь абстрактные классы в любом месте иерархии классов домена. Их атрибуты и отношения также отображаются в записях / экземплярах всех нисходящих классов.

  • Отношения . Позволяет редактировать (из коробки) записи / экземпляры, которые имеют отношения «многие ко многим» и отношения с ассоциативными классами (например, django называет эти промежуточные модели )

  • Расширение. Позволяет расширить администратор, чтобы мы могли использовать наши собственные «элементы управления пользовательским интерфейсом» для конкретных объектов домена. Некоторая информация слишком «изящна» для стандартного элемента управления на основе форм, чтобы работать соответствующим образом.

  • UI Components. Вместо того, чтобы выбирать между использованием всего этого или ни одного из них, было бы неплохо иметь общие «элементы управления UI», которые можно повторно использовать из любой страницы веб-сайта, для редактирования определенных доменных объектов.

Язык программирования не является проблемой в данный момент, хотя я склоняюсь к языкам (или структурам), которые позволяют мне выразить большую часть информации на уровне модели предметной области (и которую модуль администратора затем может использовать, чтобы сделать меня богаче). UI).

Ответы [ 4 ]

4 голосов
/ 16 ноября 2011

Я играл с Active Admin и Rails Admin для пары проектов Rails 3.1, над которыми я работаю. Хотя оба хороши, я все больше и больше переходил на Rails Admin. Я обнаружил, что его легко настроить, он отлично справляется со связанными моделями и имеет отличный пользовательский интерфейс по умолчанию.

Rails Admin

3 голосов
/ 16 ноября 2011

Определенно старые добрые WebObjects с системой правил под названием DirectToWeb. Он генерирует все во время выполнения на основе правил. По умолчанию он может отображать все свойства и отношения вашей сущности.

Полагаю, что каждый текущий веб-фреймворк будет предлагать что-то вроде скаффолдинга, но часто работа начинается, как только вы меняете модель.

Ознакомьтесь с этой публикацией и тизером о новейшей платформе на основе DirectToWeb, ERModern. Вы используете практически нулевой код для того, что вы видите в видео, и вы можете создавать целые приложения вокруг него. Спонсором выступила команда iTunes.

Отредактируйте для ваших пунктов маркера:

  • Абстрактные классы и доменные объекты, которые могут быть в значительной степени полиморфными - Вы обрабатываете их, используя правила.

  • Редактирование отношений - Нет проблем, это зависит только от конструкции ваших компонентов. Если вы используете ERModern, вы получите это бесплатно.

  • Общие компоненты пользовательского интерфейса - Именно так работает DirectToWeb. Вы используете (или определяете свои) универсальные компоненты, которые отображают себя в соответствии с текущей сущностью (объект, унаследованный от EOEnterpriseObject) и правилами, запущенными для текущего состояния (D2WContext, по сути большой словарь).

Вы можете увидеть все это в действии за 45 минут ERModern Intro Video .

0 голосов
/ 16 ноября 2011

Я люблю WebObjects.

WebObjects -> EntityModeler -> Wonder -> ERD2WModernLook -> ERAttachment -> ERRest

Bam. Готово.

0 голосов
/ 16 ноября 2011

Это не простой вопрос.

Вы никогда не указываете, какой язык вы хотите использовать, и называете некоторые функции, но сколько из этих функций вы хотите.

Я имею в виду, что мог бы предложить ряд платформ и инструментов для ASP.Net MVC или веб-форм, но что если вы разработчик PHP или Java-разработчик?

Я мог бы предложить SharePoint (и мне, как правило, не нравится sharepoint, но все, что вам нужно, это SharePoint), но тогда возникает вопрос:

Сколько гибкости и свободы вы хотите настроить или сколько вы хотите, чтобы фреймворк делал, и вы просто обезьяна кода.

Так что я дам вам только мое мнение.

Я использую ASP.Net MVC для своих пользовательских приложений. Он делает все, что вы хотите, и дает мне большую свободу для создания и расширения с помощью инструментов, если я так сделаю. Плюс из коробки есть пользовательская база данных с ролями, которую я могу легко создать из босса, когда я впервые запускаю приложение.

Кроме того, CRUD совершенно прост и прямо из коробки. просто зацените http://www.asp.net/mvc есть учебный раздел, в котором рассказывается, что вы хотите, и который вы можете выполнить за полдня.

Тогда есть некоторые OR / M, такие как NHibernate, Entity Framework, Subsonic, которые используют www.google.com, чтобы найти учебники для них, если вы не знакомы с ними.

Кроме того, есть SharePoint, у которого есть кривая обучения, но как только вы обойдете его, это будет довольно просто, так как легко выявлять ошибки, фокусироваться на бизнес-логике и не беспокоиться о другой схеме базы данных (поскольку вам даже не нужно прикасаться база данных).

...