debutant :)

Bonjour,

je cherche à comprendre ce framework, j’ai fait plusieurs tutoriaux et commence à… ne rien comprendre :)

J’ai un site avec une seule table (pour simplifier) ‘article’ (en MYSQL).

Voici mon problème, j’ai compris comment créer des pages, gérer des données (mes articles) avec le CRUD.

Maintenant j’aimerai faire ressortir l’article le plus récent sur ma home page.

Comment faire ? J’ai bien compris qu’il faut réutiliser les controller générer par le CRUD (pour ne pas dupliquer du code) mais comment ‘dire’ à YII je veux mon dernier article sur ma home page… Dans quel controller ? quel modele ? comment dire à la ‘vue’ prends ces données et pas celle-la…

Je ne sais pas si je suis clair

merci pour votre aide

O.

Il te faut créer une colonne date_ceation dans ta table article et appliquer un critère pour affiché tes article par date_creation decroissante

j’espère que cela va t’aider

bonne chance

Salut ombritude,

je te conseille de jeter un oeil au site blog, fourni avec la distribution de Yii.

Concernant les controllers et les vues crées par le CRUD, je les utilise uniquement pour l’interface d’Administration (avec quelques modifs selon les besoins)

Bon courage

ps: Yii est-il le premier framework que tu utilises ?

Merci pour votre aide, oui en effet c’est le premier framework MVC (j’ai déjà regardé zend, utilisé PEAR, php2go) et sinon j’utilise depuis des années mes propres classes et un moteur de templates (modelixe)…

Je suis tombé par hasard sur Yii et je le trouve tres bien (notamment l’utilisation ajax/jquery à priori en natif)…

Mais il me manque un exemple facile ou je puisse voir l’utilisation des BDD hors backoffice :slight_smile:

Je vais aller voir l’exemple du blog et peut être vais revenir vers vous et votre savoir :)

voila d’autres questions :confused:

post/index dans un lien signifie que le controller sera "PostController.php", le modèle "Post.php" et que la vue sera index.php… Est ce bien cela ?

Mais si maintenant sur ma home page j’ai des post, et des agendas (donc issus de 2 tables différentes… Aurais je plusieurs controller (sic models) pour le même affichage ? Ou alors dans un même controller je tape dans les 2 tables ?

Je te conseille fortement de lire ici

Par défaut, post/index correspond à la méthode action[b]Index/b du contrôleur PostController. … mais pour ce qui est du modèle, et même de la vue, c’est libre. Tu peux utiliser les modèles que tu veux dans ton contrôleur, dans ton cas : PostModel et AgendaModel (par exemple).

Pour ce qui est de la vue, si dans ton controller PostController, tu écris :


$this->render('ma_vue');

C’est la vue qui se trouve dans protected/views/post/ma_vue.php qui sera utilisée (cela n’est pas vrai si ton controleur fait partie d’un module, mais bon, si tu débutes, les modules c’est pour plus tard ;) )

Tout cela peut bien sûr être modifié/personnalisé, mais par défaut, si tu suis la "norme" Yii, ça fonctionne comme cela.

Courage …

8)

oui merci j’y suis constamment dessus… Il faut juste savoir ou se trouve ce que l’on cherche :)

Merci beaucoup pour ta réponse, je la note dans mon petit auto-doc :) Et je continue mes recherches !!!

bonne journée