0

モデルをコントローラーに拡張することは良い考えですか?

たとえば、モデル内の関数をパブリックではなく保護し、モデルをコントローラーに拡張して、コントローラーがそれらの関数を引き続き呼び出せるようにしたいとしますか?

それは良いことですか?それとも、それらを公開したままにする必要がありますか?

4

2 に答える 2

3

いいえ、それをしないでください !これは、MVC のオブジェクト全体を無効にします。そのモデルまたは関連するモデルでのみ使用される場合を除き、モデル内のすべての関数をパブリックのままにします。その場合、それらはそれぞれ非公開/保護することができます。

モデルをコントローラに拡張すると、コントローラがモデルになります。

于 2013-10-10T14:53:58.977 に答える
1

コントローラーがモデルを「拡張」する方法を想像できません。たとえば、Eloquent モデルを拡張して、次のような継承モデルを作成できます。

class ModelB extends ModelA
{
 // code
}


class ModelA extends Eloquent
{
protected $something;
//code
}

それに応じてコントローラーでそれらを使用します。コントローラーは異なるクラス BaseController を拡張し、そもそもモデルとは異なる目的を持っています。したがって、短い回答はノーです。

于 2013-10-10T14:54:38.543 に答える