![]() |
How to organize applications ? - Printable Version +- CodeIgniter Forums (https://forum.codeigniter.com) +-- Forum: Using CodeIgniter (https://forum.codeigniter.com/forumdisplay.php?fid=5) +--- Forum: Best Practices (https://forum.codeigniter.com/forumdisplay.php?fid=12) +--- Thread: How to organize applications ? (/showthread.php?tid=75058) |
How to organize applications ? - jocm.aguiar - 12-15-2019 What would be recommended for developing a complex application, would everything be within the framework or would it use the framework for each subapplication ? RE: How to organize applications ? - InsiteFX - 12-15-2019 It really depends on what type of application it is. You could have and application that has separate backend and frontend. In CodeIgniter 4 we now have modules so we can divide our applications into modules. Example Admin Module Blog Module CMS Module etc; CodeIgniter 4 is just about ready to be released soon so I would start by designing my new application using CodeIgniter 4 and modules. That is what I' am doing using now. Building my admin dashboard using AdminLTE. The nice thing about using modules is that once made they are reusable. RE: How to organize applications ? - jocm.aguiar - 12-17-2019 so the modules are in the root of the framework. And as would be the structure of CI, I refer to the directories controllers, models, view and others. Would they stay within each module ? RE: How to organize applications ? - InsiteFX - 12-17-2019 This is how my modules are laid out. app Insitefx -- Admin - Module ---- Config ---- Controllers ---- etc; -- Blog - Module ---- Config ---- Controllers ---- etc; public_html -- assets -- index.php system writable I use my name as the main namespace. RE: How to organize applications ? - InsiteFX - 12-22-2019 Yes, app public system etc; Your_name or Company name ( root namespace ) -- Module_name ( Admin ) ---- Config ---- Controllers ---- Database ---- Entities ---- Filters ---- Helpers ---- Language ---- Libraries ---- Models ---- Views A module consists of almost the whole app folder, except you only need the folders that you are going to use. RE: How to organize applications ? - ZoeF - 04-14-2020 In that case how would you interconnect modules? For instance you have a admin structure and a user structure. What if a admin also has some functionality of the user? Is their a way to let the modules (if i can call them that) speak with eachother? RE: How to organize applications ? - InsiteFX - 04-14-2020 Any module can access any other module there all just classes and name spaced. This is why you try to keep all your business logic in your models then any module can access the models. But any module class can call any class in your application. RE: How to organize applications ? - 68thorby68 - 04-24-2020 Thank you for this thread. I have installed CI4 today with the intention to migrate my sprawling php project scripts. My project is split into 2 distinct parts. Public Pages Admin Area Given the above explanation it is my intention to do the following: 1)Create a admin folder in the root and copy all app folders/files to the new admin folder 2)Use default namespace and develop all public pages in app folder Having done this, and having changed admin/config/app.php from public $baseURL = 'http://mydomain/'; to $baseURL = 'http://mydomain/admin/'; I am running into a 404 error when trying to access http://mydomain/admin/ that states Controller or its method is not found: App\Controllers\Admin::index I'm a little confused as I want to be able both http://mydomain/ and http://mydomain/admin/ independantly. What am I missing? RE: How to organize applications ? - InsiteFX - 04-25-2020 You need to create a Config/Routes.php in your Admin folder like above. This is how I started my Routes this is still a work in progress. Just an Example below. PHP Code: <?php In the route group above change to your namespace. RE: How to organize applications ? - 68thorby68 - 04-25-2020 ahhh! that make sense. Many thanks. |