2015-11-11 3 views
0

Я слежу за учебной книгой на сайте symfony, и я пытаюсь получить регистрационную форму, не используя FOS, так что я получаю описание того, как все это работает.Symfony Регистрационная форма не отображается

я следовал вместе с шагами здесь: http://symfony.com/doc/current/cookbook/security/entity_provider.html#security-crete-user-entity http://symfony.com/doc/current/cookbook/doctrine/registration_form.html

Однако, когда я запускаю его, и я иду в/зарегистрироваться. Я не получаю обработанную форму, но вместо этого появляется http-запрос с просьбой ввести имя пользователя и пароль. Однако, несмотря на то, что я вхожу, он будет продолжать повторяться и не будет отображать форму.

+0

http://symfony.com/doc/current/book/security.html о http_basic. –

ответ

0

Вы должны изменить свое приложение/config/security.yml. Если вы используете этот article вы должны иметь это security.yml

security: 
    encoders: 
     AppBundle\Entity\User: 
      algorithm: bcrypt 
    providers: 
     our_db_provider: 
      entity: 
       class: AppBundle:User 
       property: username 
       # if you're using multiple entity managers 
       # manager_name: customer 

    firewalls: 
     default: 
      pattern: ^/ 
      http_basic: ~ 
      provider: our_db_provider 

Это означает, что все маршруты защищены HTTP базовой аутентификации. Вы должны добавить элементы контроля доступа в свой security.yml

access_control: 
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY } 
0

Вы должны зарегистрировать свой маршрут в routing.yml. Это не сказано в этих уроках.

# app/config/routing.yml 

# ... 

register: 
    pattern: /register 
    defaults: { _controller: AppBundle:Security:register }