Это зависит от модели. Если это объект, который имеет отношение только к текущему пользователю, то подразумевается, что, вероятно, не будет изменять через другого пользователя или систему, и сеанс будет таким же удобным местом, как и где-либо еще, чтобы сохранить его. * Он также может смысл хранить копию для каждого пользователя, если это то, что каждый пользователь часто затрагивает.
С другой стороны, если объект разделяется между пользователями, его следует хранить в cache или другом централизованном носителе для сохранения, чтобы была только одна авторитетная копия; и во избежание потери памяти при дублировании записей.
* Тем не менее, это открывает совершенно другой набор вопросов, связанных с кешированием и обращением к базе данных каждый раз, на что может ответить только тщательный архитектурный обзор приложения и шаблонов использования. Является ли WFE (web front-end) память менее требовательной, чем соединения с базой данных. Является ли хитом получения объекта больше или меньше, чем сохранение копий в других местах?
Это за форму заказа продукта. – ebb
@ebb, тогда вы, вероятно, просто ответили на вопрос! –
Сохраните идентификатор в сеансе вместо модели :)? – ebb