Partage
  • Partager sur Facebook
  • Partager sur Twitter

MOOC Découvrez le framework PHP Laravel

    1 juin 2015 à 16:55:04

    Oui j'avais vu ça dans la doc. 

    Dans mon cas, le user était dans le controller vu que c'était le AuthController, donc j'y ai accès directement. 

    Mais j'ai bien compris, que du coup, ça dépend du contexte du controller. Si on a l'objet -> on peut le passer. Si on n'a que l'id, l'idéal est de faire le find dans le repository :)

    • Partager sur Facebook
    • Partager sur Twitter
      1 juin 2015 à 19:35:07

      Bonjour à tous,

      J'ai beaucoup de retard mais je persiste.

      Je suis rendu à la deuxième partie, au tout début : Migrations et Modèles.

      Dans l'exemple, de mon côté, j'ai une erreur 403, Forbidden lors de la soumission du formulaire.

      Une histoire de droit ?

      Merci de votre aide.

      • Partager sur Facebook
      • Partager sur Twitter
        1 juin 2015 à 20:46:13

        Bonjour,

        En général une erreur 403 à la soumission d'un formulaire vient d'une requête de formulaire où on a oublié de renvoyer true au retour de la méthode authorize.

        Cordialement.

        • Partager sur Facebook
        • Partager sur Twitter
          2 juin 2015 à 9:25:58

          C'est ça!

          Merci bestmomo.

          Maintenant que le cours est terminé, on peut quand même faire appel à votre aide, au besoin ?

          Cordialement

          • Partager sur Facebook
          • Partager sur Twitter
            2 juin 2015 à 9:35:17

            Bonjour,

            Il y en a déjà qui font appel à moi ici ! Je répondrai évidemment aux questions ici mais il faut aussi penser aux forums dédiés comme celui de Laravel France où j'interviens régulièrement, ainsi que celui de Laracasts qui est en anglais où je suis aussi relativement actif.

            Cordialement.

            • Partager sur Facebook
            • Partager sur Twitter
              2 juin 2015 à 9:59:23

              Je viens de finir mes corrections de l'exercice 2, et le dernier que j'ai reçu s'est apparemment trompé d'archive !

              Il y a un moyen pour lui de faire annuler cet upload et les notes associées ?

              • Partager sur Facebook
              • Partager sur Twitter
                2 juin 2015 à 11:16:56

                Pour ça, je pense qu'il faut voir directement avec l'équipe d'OC.

                J'ai une question concernant les seeds. Quand je lance un 2ème db:seed, suite à l'ajout de tables en DB, il me reseed mes 1ères tables. Il y a moyen d'éviter ça, sans avoir à commenter les lignes (car il faudra bien seeder ces tables en prod) ? 

                Merci

                • Partager sur Facebook
                • Partager sur Twitter
                  2 juin 2015 à 12:14:25

                  Si tu enlèves ceci de tes fichiers de seed, ça devrait aller, normalement : DB::table('posts')->delete();
                  • Partager sur Facebook
                  • Partager sur Twitter
                    2 juin 2015 à 15:20:10

                    Mais si j'ai bien compris le concept, le seed ne sert qu'à avoir des données pour les tests ?

                    On peut peut-être s'en servir pour récupérer les données d'un autre système pour repartir sur des bases saines, mais je vois pas trop l'intérêt de les ajouter à des données existantes ?

                    • Partager sur Facebook
                    • Partager sur Twitter
                      2 juin 2015 à 16:05:59

                      Tant qu'à faire autant rafraîchir la migration en lançant le seed dans la foulée :

                      php artisan migrate:refresh --seed

                      En mode production il est judicieux d'ajouter --force

                      -
                      Edité par bestmomo 2 juin 2015 à 16:07:27

                      • Partager sur Facebook
                      • Partager sur Twitter
                        2 juin 2015 à 16:16:43

                        Ok merci.

                        Le but est de seeder des tables contenant des données fixes, donc ce n'est pas que pour les tests. 

                        Merci pour la commande, j'utiliserai donc ça :D

                        • Partager sur Facebook
                        • Partager sur Twitter
                          3 juin 2015 à 9:28:36

                          Bonjour

                          A propos de l'exercice de la partie 3, dans l'énoncé, le récapitulatif des boutons, controles et progress. C'est moi, ou les colonne FormBuilder et HtmlBuilder sont inversées ?

                          • Partager sur Facebook
                          • Partager sur Twitter
                            3 juin 2015 à 9:57:08

                            Bonjour,

                            Je crois qu'effectivement j'ai inversé les titres des 2 colonnes ! Je corrigerai ça.

                            Cordialement.

                            • Partager sur Facebook
                            • Partager sur Twitter
                              3 juin 2015 à 21:10:09

                              @bestmomo, que fait l'option --force ?

                              Et sinon, j'ai créé/configuré un compte mailtrap pour voir tous les mails sortants pour les tests (Notamment pour le reset de mot de passe), mais c'était un peu dégueulasse de voir que config/mail.php n'était pas adapté par défaut pour être utilisé avec les valeurs d'environnement ;)

                              • Partager sur Facebook
                              • Partager sur Twitter
                                3 juin 2015 à 21:45:42

                                @captain_torche

                                En mode "production" lorsqu'on lance une migration ou un seed on reçoit un message de confirmation par sécurité. Si on utilise l'option --force on évite ce message.

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  4 juin 2015 à 18:03:28

                                  bonjour je suis dans la partie BDD  :

                                  j ai regardé sur le forum rien trouvé pour mon pb....

                                  qui est à ce niveau :

                                  "Avec Eloquent une table est représentée par une classe qui étend la classe Model. Pour notre table emails voici la classe à créer (app/Email.php) :"

                                  <?php namespace App;

                                  use Illuminate\Database\Eloquent\Model;

                                  class Email extends Model {

                                      protected $table = 'emails';

                                      public $timestamps = false;


                                  }

                                  Pourriez vous donner le chemin complet  de (app/Email.php) je ne suis pas
                                  sur l avoir mis au bon endroit

                                  merci bcp pour ce tuto

                                  cdlt

                                  sophie

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    4 juin 2015 à 18:47:49

                                    En toute logique, à la racine de ton installation ...

                                    Dans le dossier "app".

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      5 juin 2015 à 9:48:55

                                      Bonjour,

                                      Je confirme, avec Laravel 5, les models se placent dans app.
                                      Cela dit ... si tu les places ailleurs et que tu utilises le bon chemin pour les appeler, il n'y a pas de problème non plus :)

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        5 juin 2015 à 10:58:55

                                        En effet, 

                                        perso, je les ai placés dans App/Model pour éviter de multiplier les classes à la racine de App :)

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          5 juin 2015 à 13:40:39

                                          On peut aussi raisonner en "domaines" pour une grosse application, il y a eu un post intéressant sur le sujet.
                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            8 juin 2015 à 0:14:51

                                            Je suis en train de faire un petit site, comme première expérience après le cours, mais j'ai un blocage avec la fonction link_to_route() : à chaque fois, le code HTML généré est affiché dans la page, au lieu d'être interprété.
                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              8 juin 2015 à 0:39:45

                                              Attention dans Blade pour du code non protégé il faut utiliser {!! ... !!} sinon ça affiche le HTML au lieu de l'interpréter.
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                8 juin 2015 à 2:10:56

                                                Dans la partie sur le routage et les facades vous proposer de regarder la classe Illuminate\Support\Facade\Route, Je n'ai pas tres bien compris comment je pouvais trouver cette classe
                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  8 juin 2015 à 9:26:09

                                                  Le chemin complet est vendor/laravel/framework/src/Illuminate/Support/Facades/Route.php.

                                                  Cdt,

                                                  Maurice

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    9 juin 2015 à 10:08:53

                                                    bonjour je souhaiterais réaliser un compteur de nombre de visite sur une de mes pages de site avec laravel mais je n'ai aucune idée comment procéder ????
                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      9 juin 2015 à 10:37:18

                                                      Comme ça, je dirai qu'il faut stocker le nombre de visites en DB.

                                                      Et ajouter un update de la table lors de l'appel de la table.. mais à confirmer..

                                                      Moi j'ai une question sur les middlewares. J'aimerai limiter l'accès à certaines pages aux users connectés. J'ai donc fait ça dans mon controller : 

                                                      class CardsController extends Controller {
                                                      
                                                      	public function __contruct()
                                                          {
                                                              $this->middleware('auth');
                                                          }
                                                      
                                                          public function index(Request $request)
                                                          {
                                                              echo 'test';
                                                          }
                                                      
                                                      }

                                                      Mais que le user soit connecté ou non, il m'affiche 'test. Je comprends pas bien pourquoi.. 

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        9 juin 2015 à 16:37:04

                                                        Bonjour,

                                                        Es-tu certain de bien être déconnecté ?
                                                        Je procède de cette manière également et cela fonctionne très bien chez moi.

                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          9 juin 2015 à 16:48:36

                                                          Certain oui, car après modification de la vue et du controller : 

                                                          public function __contruct()
                                                              {
                                                                  $this->middleware('auth');
                                                              }
                                                          
                                                              public function index(Request $request)
                                                              {
                                                                  $cards = Card::where('user_id','=',Auth::user()->id)->where('sold','=',false)->with('cards_definition')->get();
                                                          
                                                                  return view('cards', compact('cards'));
                                                              }

                                                          Si je suis déconnecté : il plante sur la ligne $cards=[...] car Auth::user() n'est pas setté.

                                                          Si je suis connecté : aucun souci

                                                          -
                                                          Edité par mrjenkins 9 juin 2015 à 16:54:00

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            9 juin 2015 à 18:23:28

                                                            @hidouche6666

                                                            Oui il doit être assez simple de créer un compteur de visites avec Laravel, comme pour tout framework PHP. Comme le dit mrjenkins il faut commencer par créer une migration pour créer une table qui contiendra :

                                                            • la date de visite
                                                            • l'IP (pour compter les visiteurs uniques)
                                                            • le nombre de pages vues (si on veut compter pour plusieurs pages)

                                                            Il faut utiliser Eloquent pour gérer cette table avec un modèle.

                                                            Ensuite il suffit d'intercepter les requêtes entrantes. Si on veut ratisser large on peut créer un middleware dédié.

                                                            Voilà les grandes lignes de la démarche.

                                                            @mrjenkins

                                                            Il serait pas un peu bidouillé le middleware ?

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            MOOC Découvrez le framework PHP Laravel

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                            • Editeur
                                                            • Markdown