Допустим, я создаю веб-приложение (использующее React, если это имеет значение), где кто-то может создать новый виджет. Некоторые свойства виджета имеют значения по умолчанию, определенные в моделях данных в API. Эти значения по умолчанию должны отображаться в форме пользовательского интерфейса для создания нового виджета.
Я бы хотел избежать дублирования этих значений по умолчанию в приложении по сравнению с моделями данных API. Вот пример модели данных, как определено в API:
Widget
_id
name
messageTextColor (default #999999)
bodyBackgroundColor (default #FFFFFF)
someBooleanValue (default true)
someOtherBooleanValue (default false)
... and so on
Существует более десятка настроек, и многие имеют значения по умолчанию.
Я мог бы продублировать эти значения по умолчанию в моем приложении пользовательского интерфейса:
class EditWidgetPage extends React.Component {
constructor(props) {
super(props);
this.state = {
name: '',
messageTextColor: '#999999',
bodyBackgroundColor: '#FFFFFF',
someBooleanValue: true,
someOtherBooleanValue: false,
... etc
};
}
}
Я также мог бы определить ресурс в своем API, GET /widgets/new
, который возвращает виджет "шаблона":
{
name: '',
messageTextColor: '#999999',
bodyBackgroundColor: '#FFFFFF',
someBooleanValue: true,
someOtherBooleanValue: false,
... etc
}
Мне интересно, может ли кто-нибудь указать мне на информация в Интернете (например, статьи в блогах), связанная с общим шаблоном, посредством которого ресурс «шаблона» доступен в API RESTful, или даже альтернативный подход, не приведенный здесь.