Какие ресурсы CRUD следует предоставить для таблицы шаблонов базы данных? - PullRequest
0 голосов
/ 10 октября 2011

Представьте себе веб-приложение для отслеживания заданий на чтение нескольких книг одновременно.Например, если книги A & B состоят из 16 глав, а книга C состоит из 32 глав, то для завершения всех трех книг за 16 недель человеку необходимо будет прочитать 1 главу в неделю для книг A & B и 2 главы в неделю для книги C.

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

enter image description here

Вопросы

  • Должен ли я предоставить ресурс Создать CRUD для назначений, даже если пользователи не будут создавать отдельные назначения?
  • Должен ли я просто предоставить ресурс Create CRUD для плана чтения, который затем прошел бы и скопировал назначения шаблона в назначения плана чтения этого пользователя?

Это приложение Ruby on Rails 3.1.

Ответы [ 2 ]

2 голосов
/ 10 октября 2011

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

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

0 голосов
/ 10 октября 2011

Вы должны сосредоточить внимание на пользовательском опыте (UX) на том, что пользователи хотят / должны делать: создание reading plans.

Пользователи не заботятся (и не должны заботиться) о вашей внутренней архитектуремоделирование бизнес-задачи.

Распространенной моделью для сложного ввода является «мастер», который проводит пользователя через ряд последовательных шагов, заполняя небольшие формы или отвечая на вопросы.Это может помочь здесь.

Возможно, вам понадобятся дополнительные интерфейсы crud для различных таблиц для вашего собственного административного использования.Но для самих пользователей сфокусируйтесь на своем взгляде на проблему, а не на своем взгляде на нее.

Если они думают о плане чтения, состоящем из ряда заданий, то задания могут быть видны им какчасть плана.- Но размещайте задания в виде расширяемых разделов на одной html-странице для каждого плана чтения - людям трудно поддерживать психическое состояние между экранами.

...