Derp
Derp

Reputation: 109

Multiple prefixed routes and DRY principle

I use CakePHP 2.2.7

In my app I have a public area and admin area. I use prefixed routes so for admin actions I use admin_index() etc.

Now I need to add additional admin area for managers. This manager area will be different in some cases against the admin area. Different layout, not all actions allowed.

My question is: Should I simply duplicate actions which already implemented for admin area (and add another prefix, for example manager_index() ) or there is a more simple and DRY solution?

Upvotes: 0

Views: 68

Answers (1)

floriank
floriank

Reputation: 25698

You can do this for example

public function manager_edit($fooId = null) {
    $this->admin_edit($fooId);
}

But if you did a good job most of your code should be already in the model and your code look like this (just a basic example);

public function manager_edit($fooId = null) {
    if ($this->Foo->edit($fooId, $this->request->params, $this->Auth->user('id')) { /*....*/ }
}

Upvotes: 1

Related Questions