Скажите, что у вас есть объект «post» в типичном сценарии блога. Сообщение в блоге может иметь разные статусы, такие как «черновик», «опубликованный», «одобренный» и т. Д. Каковы наилучшие способы справиться с этим, особенно в отношении сохранения этих данных в базе данных значимым образом, а также значимым образом в коде.Код состояния Дизайн Шаблоны
Как правило, я видел, что они хранятся как int, связанные со строкой в базе данных (таблицы «posts» в этом примере). Иногда в базе данных есть таблица поиска, чтобы объяснить эти статусы (например, таблица состояния с id => 1 name => черновик и т. Д.). Обычно я переводил их в перечисление на уровне доступа к данным, чтобы иметь более значимое представление кода и избегать «волшебных чисел».
Однако это решение имеет разработчика, обновляющего два разных места (базу данных и код) для добавления или изменения типа состояния.
Что может быть лучше? Кажется, это проблема, с которой я часто сталкивался, но я никогда не видел ее.