2017-09-07 7 views
-1
**Security.yml** Creating Authentication (Log in page) 
     I have attached a error screen shot i am unable to view the page. 

のsecurity.yml(ページにログインします。) 私は私がページを表示することができませんエラーのスクリーンショットを添付しています。 Security.yml認証の作成(ログインページ) エラースクリーンショットを添付しました。ページを表示できません。 Security.yml認証の作成(ログインページ) エラースクリーンショットを添付しました。ページを表示できません。認識できないオプション「クラス、プロパティ」

 [![enter image description here][1]][1] 

     # To get started with security, check out the documentation: 
     # https://symfony.com/doc/current/security.html 
     security: 
      encoders: 
       AppBundle\Entity\User: 
       algorithm: bcrypt 


      # https://symfony.com/doc/current/security.html#b-configuring-how-users-are-loaded 
      providers: 
       db_provider: 
        entity: 
        class: AppBundle:User 
        property: username 


      firewalls: 
       # disables authentication for assets and the profiler, adapt it according to your needs 
       dev: 
        pattern: ^/(_(profiler|wdt)|css|images|js)/ 
        security: false 

       main: 
        anonymous: ~ 
        form_login: 
         login_path: login 
         check_path: login 



    **User.php** This is my entity 

     <?php 

     namespace AppBundle\Entity; 

     use Doctrine\ORM\Mapping as ORM; 
     use Symfony\Component\Security\Core\User\UserInterface; 

     /** 
     * @ORM\Table(name="user") 
     * @ORM\Entity(repositoryClass="AppBundle\Repository\UserRepository") 
     */ 
     class User implements UserInterface, \Serializable 
     { 
      /** 
      * @ORM\Column(type="integer") 
      * @ORM\Id 
      * @ORM\GeneratedValue(strategy="AUTO") 
      */ 
      private $id; 

      /** 
      * @ORM\Column(type="string", length=25, unique=true) 
      */ 
      private $username; 

      /** 
      * @ORM\Column(type="string", length=64) 
      */ 
      private $password; 

      /** 
      * @ORM\Column(type="string", length=60, unique=true) 
      */ 
      private $email; 

      /** 
      * @ORM\Column(name="is_active", type="boolean") 
      */ 
      private $isActive; 

      public function __construct() 
      { 
       $this->isActive = true; 
       // may not be needed, see section on salt below 
       // $this->salt = md5(uniqid('', true)); 
      } 

      public function getUsername() 
      { 
       return $this->username; 
      } 

      public function getSalt() 
      { 
       // you *may* need a real salt depending on your encoder 
       // see section on salt below 
       return null; 
      } 

      public function getPassword() 
      { 
       return $this->password; 
      } 

      public function getRoles() 
      { 
       return array('ROLE_USER'); 
      } 

      public function eraseCredentials() 
      { 
      } 

      /** @see \Serializable::serialize() */ 
      public function serialize() 
      { 
       return serialize(array(
        $this->id, 
        $this->username, 
        $this->password, 
        // see section on salt below 
        // $this->salt, 
       )); 
      } 

      /** @see \Serializable::unserialize() */ 
      public function unserialize($serialized) 
      { 
       list (
        $this->id, 
        $this->username, 
        $this->password, 
        // see section on salt below 
        // $this->salt 
       ) = unserialize($serialized); 
      } 
     } 


     [1]: https://i.stack.imgur.com/U1IJX.jpg 


    **config.yml** 
This is my config.yml here i added driver pdo_sqlite and form_theme: -'bootstrap_3_layout.html.twig' 

    imports: 
     - { resource: parameters.yml } 
     - { resource: security.yml } 
     - { resource: services.yml } 

    # Put parameters here that don't need to change on each machine where the app is deployed 
    # https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration 
    parameters: 
     locale: en 

    framework: 
     #esi: ~ 
     #translator: { fallbacks: ['%locale%'] } 
     secret: '%secret%' 
     router: 
      resource: '%kernel.project_dir%/app/config/routing.yml' 
      strict_requirements: ~ 
     form: ~ 
     csrf_protection: ~ 
     validation: { enable_annotations: true } 
     #serializer: { enable_annotations: true } 
     templating: 
      engines: ['twig'] 
     default_locale: '%locale%' 
     trusted_hosts: ~ 
     session: 
      # https://symfony.com/doc/current/reference/configuration/framework.html#handler-id 
      handler_id: session.handler.native_file 
      save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%' 
     fragments: ~ 
     http_method_override: true 
     assets: ~ 
     php_errors: 
      log: true 

    # Twig Configuration 
    twig: 
     debug: '%kernel.debug%' 
     strict_variables: '%kernel.debug%' 
     form_theme: 
     - 'bootstrap_3_layout.html.twig' 

    # Doctrine Configuration 
    doctrine: 
     dbal: 
      driver: pdo_sqlite 
      host: '%database_host%' 
      port: '%database_port%' 
      dbname: '%database_name%' 
      user: '%database_user%' 
      password: '%database_password%' 
      charset: UTF8 
      path: '% database_path %' 
      # if using pdo_sqlite as your database driver: 
      # 1. add the path in parameters.yml 
      #  e.g. database_path: '%kernel.project_dir%/var/data/data.sqlite' 
      # 2. Uncomment database_path in parameters.yml.dist 
      # 3. Uncomment next line: 
      #path: '%database_path%' 

     orm: 
      auto_generate_proxy_classes: '%kernel.debug%' 
      naming_strategy: doctrine.orm.naming_strategy.underscore 
      auto_mapping: true 

    # Swiftmailer Configuration 
    swiftmailer: 
     transport: '%mailer_transport%' 
     host: '%mailer_host%' 
     username: '%mailer_user%' 
     password: '%mailer_password%' 
     spool: { type: memory } 


    **parameters.yml** 
This is my parameters.yml file i didn't change anything in this file. 

    # This file is auto-generated during the composer install 
    parameters: 
     database_host: 127.0.0.1 
     database_port: null 
     database_name: symfony 
     database_user: root 
     database_password: null 
     mailer_transport: smtp 
     mailer_host: 127.0.0.1 
     mailer_user: null 
     mailer_password: null 
     secret: ab2af876f87b559feb166e695a29ec552758419a 


    **parameters.yml.dist** 
This is my **parameters.yml.dist** here i uncomment database_path: 
This is my **parameters.yml.dist** here i uncomment database_path: 
This is my **parameters.yml.dist** here i uncomment database_path: 
This is my **parameters.yml.dist** here i uncomment database_path: 


    # This file is a "template" of what your parameters.yml file should look like 
    # Set parameters here that may be different on each deployment target of the app, e.g. development, staging, production. 
    # https://symfony.com/doc/current/best_practices/configuration.html#infrastructure-related-configuration 
    parameters: 
     database_host: 127.0.0.1 
     database_port: ~ 
     database_name: symfony 
     database_user: root 
     database_password: ~ 
     # You should uncomment this if you want to use pdo_sqlite 
     database_path: '%kernel.project_dir%/var/data/data.sqlite' 

     mailer_transport: smtp 
     mailer_host: 127.0.0.1 
     mailer_user: ~ 
     mailer_password: ~ 

     # A secret key that's used to generate certain security-related tokens 
     secret: ThisTokenIsNotSoSecretChangeIt 
+0

その行のインデントの問題 – Robert

答えて

1

設定やインデントが間違っています。

変更

providers: 
    db_provider: 
     entity: 
     class: AppBundle:User 
     property: username 

providers: 
    db_provider: 
     entity: 
      class: AppBundle:User 
      property: username 

参考: http://symfony.com/doc/current/reference/configuration/security.html

+0

卿、私がやったインデントが、より多くの情報 –

+0

を働いていないその私は私のプロジェクトに関連するいくつかのファイルを追加しました。私もスクリーンショットを追加しました。 – Pete

+0

卿とのご質問を更新し@naval –

関連する問題