我远不是 MVC V 领域的专家,最近一直在尝试不同的 View,我目前正在尝试的可能甚至不是一个正确的 View,它只是我想出来的。
在我的应用程序中,aCustomer
可以将Request
(交付请求)发送到Courier
. 有Request
4 个状态:
- 发送
- 取消
- 被拒绝
- 公认
我有一个RequestView
扩展我的View
. 我将一个Request
实体注入到我RequestView
的构造中,并根据它所处的状态Request
选择RequestView
适当的模板。
我RequestView
有一些方法,例如:
protected function getStateText() {
switch( $this->request->getState() ) {
case Request::STATE_SENT:
return 'Sent';
case Request::STATE_CANCELLED:
return 'Cancelled';
case Request::STATE_REJECTED:
return 'Rejected';
case Request::STATE_ACCEPTED:
return 'Accepted';
default:
return 'Error';
}
}
然后我可以通过调用在我的模板中使用它
echo $this->getStateText();
在Request
实体中,我只使用 INTEGER 处理状态,当我在表示层时,没有人希望以数字格式查看状态,他们希望以文本形式查看当前状态,这就是为什么我getStateText()
在表示层而不是实体本身。我的想法/推理在这里正确吗?
我目前的实施是好是坏?这种类型的视图有名称吗?
谢谢。