Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Objasnjenje za plugin MVC

[es] :: PHP :: Objasnjenje za plugin MVC

[ Pregleda: 1797 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

alfa-pro
Pancevo

Član broj: 241818
Poruke: 476
*.dynamic.isp.telekom.rs.



+7 Profil

icon Objasnjenje za plugin MVC02.02.2011. u 12:30 - pre 161 meseci
Cao ljudi u pitanju je WP plugin i dozovljena je dogranja koda izmena i sve to... Uradjen na MVC modelu skroz je jednostavan SIMPLE i sada mene muci to sto ja ne mogu da provalim kako je autor osmislio da kada u kontroleru povezuje sa view delom???
Neznam dali me kapirate? Ja sada zelim da dodam novi fajl, klasu zasebnu koja ce se zvati portfolio ali kada to uradim isto kao i oni nece da se prikaze u view delu...
U kontroleru imam vec postojeci fajl profil i u njemu kada dodam tipa funkciju test i u njoj primenljivu $test = "test,test"; i kada pozovem sve to u view delu ovim putem echo $test do izadje, prikaze se....
Dok problem nastaje kada ja napravim novi php dokument pod nazivom class Portfolio {} i napravim funkciju test ona nece da se prikaze u taj view deo... Gledao sam kako on poziva kontroler u svaku klasu ali ne kapiram koliko vidim on ga nigde ne poziva niti to niti konstruktor...
u index fajlu sam nasao dosta podesavanja instancirao sam ga ali opet nece... Ne razumem pa ako bi mogli cisto od oka da pogledate pa da mi objasnite koja je sustina autora....

Ja jedino znam u COdeigniteru dobro da radim i tamo je jednostavnije kada saljem kontroler na neku view stranu normalno samo idem
Code:
$this->load->view('imestrane');


dok on ovde koliko sam ja ukapirao umesto toga koristi
Code:
require MNGL_VIEWS_PATH . "/mngl-profiles/profil.php"; // ovo se nalazi u view delu



Evo postavicu njegov kontroler cisto da pogledate
Code:

class MnglProfilesController
{
   function profile($user_screenname='')
  {
    global $mngl_friends_controller, $mngl_boards_controller, $mngl_app_helper, $mngl_blogurl, $mngl_options;

    if( MnglUser::is_logged_in_and_visible() and 
        empty($user_screenname) and
        $user = MnglUser::get_stored_profile())
    {
      $avatar = $user->get_avatar(200);
      require MNGL_VIEWS_PATH . "/mngl-profiles/profile.php";
    }
    else if( !empty($user_screenname) and 
             $user = MnglUser::get_stored_profile_by_screenname($user_screenname) )
    {
      $screenname = $user_screenname;
      $avatar = $user->get_avatar(200);

      require MNGL_VIEWS_PATH . "/mngl-profiles/profile.php";
    }
    else
      require MNGL_VIEWS_PATH . "/shared/unauthorized.php";
  }
}

to je njegov kontroler za profil dok ja napravim isti takav ali nece da se prikaze u view delu

u index strani ih samo instancira

Code:

define('MNGL_APIS_PATH',MNGL_PATH.'/classes/apis');
define('MNGL_MODELS_PATH',MNGL_PATH.'/classes/models');
define('MNGL_CONTROLLERS_PATH',MNGL_PATH.'/classes/controllers');
define('MNGL_VIEWS_PATH',MNGL_PATH.'/classes/views');

require_once(MNGL_CONTROLLERS_PATH . "/MnglOptionsController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglProfilesController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglPortfolioController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglFriendsController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglUsersController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglBoardsController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglHelpController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglShortcodesController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglCaptchaController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglCustomFieldsController.php");
require_once(MNGL_CONTROLLERS_PATH . "/MnglMessagesController.php");
global $mngl_app_controller;
global $mngl_options_controller;
global $mngl_profiles_controller;

global $mngl_friends_controller;
global $mngl_users_controller;
global $mngl_portfolio_controller;
global $mngl_boards_controller;
global $mngl_help_controller;
global $mngl_shortcodes_controller;
global $mngl_captcha_controller;
global $mngl_custom_fields_controller;
global $mngl_messages_controller;

$mngl_app_controller           = new MnglAppController();
$mngl_options_controller       = new MnglOptionsController();
$mngl_profiles_controller      = new MnglProfilesController();
$mngl_friends_controller       = new MnglFriendsController();
$mngl_users_controller         = new MnglUsersController();
$mngl_portfolio_controller     = new MnglPortfolioController();
$mngl_boards_controller        = new MnglBoardsController();
$mngl_help_controller          = new MnglHelpController();
$mngl_shortcodes_controller    = new MnglShortcodesController();
$mngl_captcha_controller       = new MnglCaptchaController();
$mngl_custom_fields_controller = new MnglCustomFieldsController();
$mngl_messages_controller      = new MnglMessagesController();




Ja sam ovde instancirao i moj kontroler require_once(MNGL_CONTROLLERS_PATH . "/MnglPortfolioController.php");
i dalje nece ne razumem zasto???

Mislim onaj njegov kontroler za profil je skroz jednostavan i nije problem uraditi on tu nigde ne poziva kontroler niti blilo sta znaci moram jos negde da ga pozovem...

Skelet dir-a je.

View, Model, Controller, apis, helpers

Sve sam detaljno pregledao i opet ne kapiram mislim da gresim u taj index deo

dok u view delu prvo definise globalne i onda samo ide echo i promenljiva i sve tako....

Code:

<?php global $mngl_user, $mngl_friend, $mngl_options, $mngl_portfolio_controller; ?>
<?php $display_profile = ( $user->privacy == 'public' or 
                           MnglUser::is_logged_in_and_an_admin() or 
                           MnglUser::is_logged_in_and_visible() ); ?>

?php echo $avatar; ?>

Kada vidjamo uvek ista lica, na kraju ona postaju deo našeg života. A kada postanu
deo našeg života,
onda žele i da nam ga izmene. I ako ne bude po njihovom, nije im pravo. Jer, svaki
čovek ima tačnu predstavu kako bi trebalo da živimo svoj život. A nikad nemaju pojma
kako treba da prožive sopstveni život.
 
Odgovor na temu

mitke013
As Divljine
Freelancer

Član broj: 231934
Poruke: 338
*.dynamic.isp.telekom.rs.



+34 Profil

icon Re: Objasnjenje za plugin MVC02.02.2011. u 22:30 - pre 161 meseci
Ucini sebi uslugu i mani se Wordpress-a i drzi se CodeIgniter-a ako si ga naucio. WP je najgore pisan program koji sam ikad video i samo ce te odvuci da i ti pocnes tako da radis. Ako nameravas da freelance-ujes, veruj, veca se kinta uzme od programa koji se rade od nule nego izrade custom modula za WP. Uporedi cene na recimo elance-u i videces i sam.
 
Odgovor na temu

alfa-pro
Pancevo

Član broj: 241818
Poruke: 476
*.dynamic.isp.telekom.rs.



+7 Profil

icon Re: Objasnjenje za plugin MVC03.02.2011. u 08:06 - pre 161 meseci
Ne mitke nisam se ja lepo izrazio. Ovo radim zbog novca nekom decku koji ima wp a taj neko je radio plugin koji je tipa isto kao na FB ono dodaj me za frenda, dodaj slike, postavi status, komentarisi status.... i sada on zeli samo jos portfolio da odradi i placa me za to... Pogledao sam kod i samo trebam da dodam u kontroloreru novu klasu PrtfolioCotroller koja ce da sadrzi funkcije
Code:

public function getFolio() {}
public function addFolio() {}
public function deliteFolio() {}
public function editFolio() {}


Naravno odradim i Modele za bazu koji ce da cupaju podatke....

Jedini problem je taj sto ne kapiram gde vise trebam da ga instanciram da bi mi prikazao cotroler u view delu...
Znaci nikada gori MVC nisam video.. Ovo je nesto budzano budzano jenom...

CI sam ucio nekoliko meseci i znaci u pola noci da me neko nesto pita znao bi, napamet znam celu dokumentaciju funkcija i sasvim je drugaciji
sistem rada njihovog MVC modela... Ovo je uzas..... A i zagledao sam da on Autor u modelu ono sto si ti meni govorio da vise bacam exception
to on ne radi kod njega su tone i tone tekstova za neki DIE gresku....
Ma pogledacu jos danas cu da se pozabavim malo sa tim ako provalim provali ako ne onda nista necu ja svoje zivce da kidam za sitnu kintu...
Kada vidjamo uvek ista lica, na kraju ona postaju deo našeg života. A kada postanu
deo našeg života,
onda žele i da nam ga izmene. I ako ne bude po njihovom, nije im pravo. Jer, svaki
čovek ima tačnu predstavu kako bi trebalo da živimo svoj život. A nikad nemaju pojma
kako treba da prožive sopstveni život.
 
Odgovor na temu

[es] :: PHP :: Objasnjenje za plugin MVC

[ Pregleda: 1797 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.