0

I just want to know what would be better between below two scenerio.

I have model A and B in CodeIgniter and two different controllers for interacting with those models, That is A_controller and B_controller, Now my question is i have so many of methods defined in both model A and B. Now i want to use a method of model A in A_controller.

It would be better to load whole model A into B_controller to just use a single method, or should i make a separate method in model B for use in B_controller.

Which option will be better with respect to Performance.

Any help will be appreciated!

codersrb
  • 140
  • 1
  • 12

3 Answers3

2

Divide and conquer

create a small model with the shared functions between models A and B, this way you won't have any duplicated code anywhere. And then you load this new model and the model A for example.

Controller A

$this->load->model('A_model'); 
$this->load->model('Shared_model'); 

Controller B

$this->load->model('B_model'); 
$this->load->model('Shared_model'); 

Hope that helps

David
  • 1,147
  • 4
  • 17
  • 29
1

Create one single model file and write functions, so you need to load only one model in controller. All functions can access from a single model.

Angel
  • 614
  • 6
  • 24
0

Nice answer provided by David above. you can also check some good answer for the same

Codeigniter : calling a method of one controller from other

stackoverflow.com/questions/6500022/codeigniter-calling-a-method-of-one-controller-from-other

Community
  • 1
  • 1
Deepak Dholiyan
  • 1,774
  • 1
  • 20
  • 35