IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Symfony 2.8 : Bug Création Nouveau Bundle


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1
    Par défaut Symfony 2.8 : Bug Création Nouveau Bundle
    Bonjour.

    J'ai récemment commencé à apprendre à utiliser Symfony dans sa version 2.8 pour un projet de stage et je me suis déjà frotté à deux problèmes qui m'empêchent d'avancer.
    Je ne peux pas demander de l'aide à mon tuteur pour le moment et j'ai l'impression d'avoir tout essayer :

    Le premier problème est que je n'arrive pas à créer de nouveaux bundles :

    A chaque fois que j'essaye, la console me renvoie le message suivant :

    "The command was not able to configure everything automatically. You'll need to make the following changes manually.
    Edit the composer.json file and register the bundle in the "autoload" section:"

    J'ai essayé de faire comme la console disait et j'ai enregistré le nouveau bundle dans la partie autoload du fichier composer.son comme ci-dessous :

    {
    "name": "symfony/framework-standard-edition",
    "license": "MIT",
    "type": "project",
    "description": "The \"Symfony Standard Edition\" distribution",
    "autoload": {
    "psr-4": {
    "AppBundle\\": "src/AppBundle"
    "AppBundle\\": "src/Acme\TestBundle\AcmeTestBundle" /*mon nouveau bundle*/
    },
    "classmap": [ "app/AppKernel.php", "app/AppCache.php" ]
    },
    "autoload-dev": {
    "files": [ "vendor/symfony/symfony/src/Symfony/Component/VarDumper/Resources/functions/dump.php" ]
    },
    "require": {
    "php": ">=5.3.9",
    "doctrine/doctrine-bundle": "~1.4",
    "doctrine/orm": "^2.4.8",
    "incenteev/composer-parameter-handler": "~2.0",
    "sensio/distribution-bundle": "~4.0",
    "sensio/framework-extra-bundle": "^3.0.2",
    "symfony/monolog-bundle": "^3.0.2",
    "symfony/swiftmailer-bundle": "~2.3,>=2.3.10",
    "symfony/symfony": "2.8.*",
    "twig/twig": "^1.0||^2.0"
    },
    "require-dev": {
    "sensio/generator-bundle": "~3.0",
    "symfony/phpunit-bridge": "~2.7"
    },
    "scripts": {
    "symfony-scripts": [
    "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
    "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
    "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
    "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
    "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
    "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
    ],
    "post-install-cmd": [
    "@symfony-scripts"
    ],
    "post-update-cmd": [
    "@symfony-scripts"
    ]
    },
    "config": {
    "bin-dir": "bin",
    "platform": {
    "php": "5.3.9"
    },
    "sort-packages": true
    },
    "extra": {
    "symfony-app-dir": "app",
    "symfony-web-dir": "web",
    "symfony-assets-install": "relative",
    "incenteev-parameters": {
    "file": "app/config/parameters.yml"
    },
    "branch-alias": {
    "dev-master": "2.8-dev"
    }
    }
    }

    Pourtant, çà ne fonctionne pas et quand je vais dans wamp, j'obtiens toujours le message d'erreur :

    "Fatal error: Class 'Acme\TestBundle\AcmeTestBundle' not found in C:\wamp\www\artagnan\app\AppKernel.php on line 19"

    Je ne comprends pas ce que je peux faire, car la fonction RegisterBundle d'AppKernel.php contient ce qu'il faut :

    public function registerBundles(){
    $bundles = array(
    new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
    new Symfony\Bundle\SecurityBundle\SecurityBundle(),
    new Symfony\Bundle\TwigBundle\TwigBundle(),
    new Symfony\Bundle\MonologBundle\MonologBundle(),
    new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
    new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
    new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
    new AppBundle\AppBundle(),


    new Acme\TestBundle\AcmeTestBundle(),
    );

    }

    Je précise au cas où, que j'ai installé Symfony via composer, et non avec le symfony installer qui était apparemment "too big to fit in memory".


    Mon deuxième problème que j'espérais résoudre en utilisant un nouveau bundle est que je n'arrive pas à modifier mon fichier layout.html.twig dans le bundle de base pour ajouter du css :

    J'ai bien configuré la route dans Ressources/config :

    Homepage:
    path: /
    defaults: { _controller: AppBundleefault:index }


    et j'appelle ma page index.html.twig dans mon controller comme ici :

    <?php

    namespace AppBundle\Controller;

    use Symfony\Bundle\FrameworkBundle\Controller\Controller;
    use Symfony\Component\HttpFoundation\Request;
    use Symfony\Component\HttpFoundation\Response;

    class DefaultController extends BaseController{
    /**
    */
    public function indexAction(Request $request){

    return $this->render('AppBundle:Homepage:index.html.twig');

    }


    }


    De ce que j'en ai compris, la page index.html.twig qui est gloabalement vide appelle ensuite le layout.html.twig.
    C'est donc ici que j'ai essayé de rajouter ma balise link vers ma page css, mais rien n'est modifié.
    Avec ou sans balise link, çà reste la même page :

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="/favicon.ico">

    <title>Spotify</title>

    <!-- Bootstrap core CSS -->

    <link href="/web/bootstrap/css/bootstrap.min.css" rel="stylesheet">

    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <!-- <link href="../../assets/css/ie10-viewport-bug-workaround.css" rel="stylesheet"> -->

    <!-- Custom styles for this template -->
    <link href="/built/min.css" rel="stylesheet">

    <!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
    <!--[if lt IE 9]><script src="../../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
    <!-- <script src="../../assets/js/ie-emulation-modes-warning.js"></script> -->

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->

    <script src="/bootstrap.js"></script>
    <script src="bootstrap.min.js"></script>
    <script src="npm.js"></script>
    </head>

    <body>

    <nav class="navbar navbar-inverse navbar-fixed-top">
    <div class="container-fluid">
    <div class="navbar-header">
    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
    <span class="sr-only">Toggle navigation</span>
    <span class="icon-bar"></span>
    <span class="icon-bar"></span>
    <span class="icon-bar"></span>
    </button>
    <a class="navbar-brand" href="#">Project name</a>
    </div>
    <div id="navbar" class="navbar-collapse collapse">
    <ul class="nav navbar-nav navbar-right">
    <li><a href="#">Dashboard</a></li>
    <li><a href="#">Settings</a></li>
    <li><a href="#">Profile</a></li>
    <li><a href="#">Help</a></li>
    </ul>
    <form class="navbar-form navbar-right">
    <input type="text" class="form-control" placeholder="Search...">
    </form>
    </div>
    </div>
    </nav>

    <div class="container-fluid">
    <div class="row">
    <div class="col-sm-3 col-md-2 sidebar">
    <ul class="nav nav-sidebar">
    <li class="active"><a href="#">Overview <span class="sr-only">(current)</span></a></li>
    <li><a href="#">Reports</a></li>
    <li><a href="#">Analytics</a></li>
    <li><a href="#">Export</a></li>
    </ul>
    <ul class="nav nav-sidebar">
    <li><a href="">Nav item</a></li>
    <li><a href="">Nav item again</a></li>
    <li><a href="">One more nav</a></li>
    <li><a href="">Another nav item</a></li>
    <li><a href="">More navigation</a></li>
    </ul>
    <ul class="nav nav-sidebar">
    <li><a href="">Nav item again</a></li>
    <li><a href="">One more nav</a></li>
    <li><a href="">Another nav item</a></li>
    </ul>
    </div>
    <div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
    <h1 class="page-header">Dashboard</h1>

    {% block placeholders %}
    <div class="row placeholders">
    <div class="col-xs-6 col-sm-3 placeholder">
    <img src="data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" width="200" height="200" class="img-responsive" alt="Generic placeholder thumbnail">
    <h4>Label</h4>
    <span class="text-muted">Something else</span>
    </div>
    <div class="col-xs-6 col-sm-3 placeholder">
    <img src="data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" width="200" height="200" class="img-responsive" alt="Generic placeholder thumbnail">
    <h4>Label</h4>
    <span class="text-muted">Something else</span>
    </div>
    <div class="col-xs-6 col-sm-3 placeholder">
    <img src="data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" width="200" height="200" class="img-responsive" alt="Generic placeholder thumbnail">
    <h4>Label</h4>
    <span class="text-muted">Something else</span>
    </div>
    <div class="col-xs-6 col-sm-3 placeholder">
    <img src="data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" width="200" height="200" class="img-responsive" alt="Generic placeholder thumbnail">
    <h4>Label</h4>
    <span class="text-muted">Something else</span>
    </div>
    </div>
    {% endblock placeholders%}

    {% block mytable %}
    <h2 class="sub-header">Section title</h2>
    <div class="table-responsive">
    <table class="table table-striped">
    <thead>
    <tr>
    <th>#</th>
    <th>Header</th>
    <th>Header</th>
    <th>Header</th>
    <th>Header</th>
    </tr>
    </thead>
    <tbody>
    <tr>
    <td>1,001</td>
    <td>Lorem</td>
    <td>ipsum</td>
    <td>dolor</td>
    <td>sit</td>
    </tr>
    <tr>
    <td>1,002</td>
    <td>amet</td>
    <td>consectetur</td>
    <td>adipiscing</td>
    <td>elit</td>
    </tr>
    <tr>
    <td>1,003</td>
    <td>Integer</td>
    <td>nec</td>
    <td>odio</td>
    <td>Praesent</td>
    </tr>
    <tr>
    <td>1,003</td>
    <td>libero</td>
    <td>Sed</td>
    <td>cursus</td>
    <td>ante</td>
    </tr>
    <tr>
    <td>1,004</td>
    <td>dapibus</td>
    <td>diam</td>
    <td>Sed</td>
    <td>nisi</td>
    </tr>
    <tr>
    <td>1,005</td>
    <td>Nulla</td>
    <td>quis</td>
    <td>sem</td>
    <td>at</td>
    </tr>
    <tr>
    <td>1,006</td>
    <td>nibh</td>
    <td>elementum</td>
    <td>imperdiet</td>
    <td>Duis</td>
    </tr>
    <tr>
    <td>1,007</td>
    <td>sagittis</td>
    <td>ipsum</td>
    <td>Praesent</td>
    <td>mauris</td>
    </tr>
    <tr>
    <td>1,008</td>
    <td>Fusce</td>
    <td>nec</td>
    <td>tellus</td>
    <td>sed</td>
    </tr>
    <tr>
    <td>1,009</td>
    <td>augue</td>
    <td>semper</td>
    <td>porta</td>
    <td>Mauris</td>
    </tr>
    <tr>
    <td>1,010</td>
    <td>massa</td>
    <td>Vestibulum</td>
    <td>lacinia</td>
    <td>arcu</td>
    </tr>
    <tr>
    <td>1,011</td>
    <td>eget</td>
    <td>nulla</td>
    <td>Class</td>
    <td>aptent</td>
    </tr>
    <tr>
    <td>1,012</td>
    <td>taciti</td>
    <td>sociosqu</td>
    <td>ad</td>
    <td>litora</td>
    </tr>
    <tr>
    <td>1,013</td>
    <td>torquent</td>
    <td>per</td>
    <td>conubia</td>
    <td>nostra</td>
    </tr>
    <tr>
    <td>1,014</td>
    <td>per</td>
    <td>inceptos</td>
    <td>himenaeos</td>
    <td>Curabitur</td>
    </tr>
    <tr>
    <td>1,015</td>
    <td>sodales</td>
    <td>ligula</td>
    <td>in</td>
    <td>libero</td>
    </tr>
    </tbody>
    </table>
    </div>
    {% endblock mytable %}
    </div>
    </div>
    </div>

    {% block google %}

    {%endblock google %}

    {% block javascripts %}

    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
    <script src="{{ asset('bundles/tuto/js/autocomplete-countries.js') }}"></script>

    <!-- Bootstrap core JavaScript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
    <script src="/bootstrap/js/bootstrap.min.js"></script>
    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <!-- <script src="../../assets/js/ie10-viewport-bug-workaround.js"></script> -->
    <script src="/built/site.min.js"></script>

    {% endblock javascripts %}
    </body>
    </html>

    Si quelqu'un peut m'aider. Merci d'avance.

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2013
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2013
    Messages : 739
    Par défaut
    Bonjour.
    il ya trop de code , en plus sans balise [CODE] .
    pourquoi ne pas partir d'un nouveau projet symfony et juste copier-coller les anciens (/src , fichier composer.json AppKernel.php etc ..)

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Par défaut
    Sans balise [CODE], ton code est impossible à lire.

    - Sur l'erreur console: il est possible que ce soit dû aux permissions sous Windows. Ne développant pas sous Win, je ne peux t'en dire plus, mais il faudrait que tu testes différentes permissions dans le dossier.

    - Sur ceci (avec la bonne balise CODE)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    "psr-4": {
    "AppBundle\\": "src/AppBundle",
    "AppBundle\\": "src/Acme\TestBundle\AcmeTestBundle" /*mon nouveau bundle*/
    },
    1 - Tu dois donner le nom de ton nouveau, pas réutiliser AppBundle

    2 - ne mélange pas les séparateurs de répertoires "/" et "\". Encore une fois, je ne suis pas sur Win, mais je pense que tout mettre en slash fonctionnera:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "src/Acme/TestBundle/AcmeTestBundle"
    3 - Et n'oublie pas la virgule entre les 2 bundles

    PS: si tu commences, passe directement à Symfony 3 si tu peux. C'est un peu plus facile (notamment grâce à l'autowiring), et fini les bundles: tu n'utilises plus que le seul AppBundle, sauf exceptions spécifiques.

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/06/2007, 17h36
  2. [PHP-JS] Conseil création nouveau site
    Par Hisander dans le forum Langage
    Réponses: 6
    Dernier message: 22/01/2007, 20h39
  3. Bug, création d'un carré rouge
    Par arnaudrou dans le forum Flash
    Réponses: 2
    Dernier message: 08/08/2006, 18h10
  4. création nouveau base de donné avec oracle
    Par awax dans le forum Oracle
    Réponses: 1
    Dernier message: 14/04/2006, 00h44
  5. [Création nouveau projet] - Référencer un autre projet
    Par TexAvery dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 17/08/2004, 12h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo