标签: fosuserbundle

Symfony FOS用户包启动

我在安装FOS用户包时遇到问题.我试图到处搜索它,但可能我太笨了,找不到它.

我创建了一个名为Admin的实体,并试图运行doctrine:schema:update --force我遇到了一个错误: The child node "from_email" at path "fos_user" must be configured.

这是我的config.yml fos部分.

fos_user:
    db_driver: orm # other valid values are 'mongodb' and 'couchdb'
    firewall_name: main
    user_class: AppBundle\Entity\Admin
Run Code Online (Sandbox Code Playgroud)

有什么建议?

php symfony fosuserbundle

19
推荐指数
1
解决办法
2万
查看次数

Symfony2/Doctrine中的Entity和Model之间有什么区别

我正在浏览FOSUserBundle.

我想说明Model/User.php 和之间有什么区别Entity/User.php.

模型和实体不能相同吗?

php symfony fosuserbundle

18
推荐指数
1
解决办法
1万
查看次数

MySQL非法混合排序规则

查看我的prod日志后,我提到了一些错误:

[2012-08-31 15:56:43] request.CRITICAL: Doctrine\DBAL\DBALException: 
An exception occurred while executing 'SELECT t0.username ....... FROM fos_user t0 WHERE t0.username = ?'
with params {"1":"Nrv\u29e7Kasi"}:

SQLSTATE[HY000]: General error: 1267 Illegal mix of collations (latin1_swedish_ci,IMPLICIT)
and (utf8_general_ci,COERCIBLE) for operation '=' 
Run Code Online (Sandbox Code Playgroud)

Alghout我在学说cfg下有UTF-8默认值:

doctrine:
    dbal:
        charset:  UTF8
Run Code Online (Sandbox Code Playgroud)

好像我的所有MySQL表都在latin1_swedish_ci,所以我的问题是:

我是否可以手动更改utf8_general_ci所有表格的校对而无需任何复杂/预防措施?

mysql collation symfony fosuserbundle symfony-2.1

18
推荐指数
2
解决办法
2万
查看次数

Symfony2:获取FormBuilder中的用户角色列表

我正在创建一个用户创建表单,我想在创建用户时为用户提供一个或多个角色.

如何获取定义的角色列表security.yml

这是我目前的表单构建器:

public function buildForm(FormBuilder $builder, array $options)
{
    parent::buildForm($builder, $options);

    // add your custom fields
    $user = new User();
    $builder->add('regionUser');
    $builder->add('roles' ,'choice' ,array('choices' => $user->getRolesNames(),
            'required'  => true,
    ));

}
Run Code Online (Sandbox Code Playgroud)

并在User.php中

public function getRolesNames(){
    return array(
        "ADMIN" => "Administrateur",
        "ANIMATOR" => "Animateur",
        "USER" => "Utilisateur",        
    );
}
Run Code Online (Sandbox Code Playgroud)

当然,此解决方案不起作用,因为roles在数据库中定义为位图,因此choices无法创建列表.

提前致谢.

php symfony fosuserbundle

17
推荐指数
4
解决办法
3万
查看次数

避免使用Doctrine实体和JMSserializer进行递归

我正在使用Symfony2,Doctrine,FOSRestBundle和JMSSerializer构建REST API.

我遇到的问题是在序列化我的实体时,序列化程序会引入任何相关实体.例如,对于作为董事会一部分的故事的一部分的任务,所以在序列化任务时,我得到的输出包括包含董事会的故事,其中包括董事会上的所有其他故事.

有没有一种简单的方法来限制它,只是包含foreignIds?

php symfony doctrine-orm fosuserbundle

17
推荐指数
3
解决办法
1万
查看次数

没有使用fosUserBundle symfony2.1为帐户配置编码器

我提交连接表单时出现此错误(我使用FOSUserBundle最新版本):

No encoder has been configured for account "MyApp\UtilisateurBundle\Entity\Utilisateur
Run Code Online (Sandbox Code Playgroud)

这是我的实体:

    <?php
namespace MyApp\UtilisateurBundle\Entity;
use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
/**
 * @ORM\Entity
 */
class Utilisateur extends BaseUser
{
    /**
    * @ORM\Id
    * @ORM\Column(type="integer")
    * @ORM\generatedValue(strategy="AUTO")
    */
    protected $id;
    public function __construct()
    {
        parent::__construct();
    }

    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的app/config/security.yml:

imports:
- { resource: "@MyAppFilmothequeBundle/Resources/config/security.yml" }
Run Code Online (Sandbox Code Playgroud)

这是我的src/MyApp/FilmothequeBundle/Ressources/config/security.yml:

security:
providers:
    fos_userbundle:
        id: fos_user.user_manager

firewalls:
    main:
        pattern:      .* …
Run Code Online (Sandbox Code Playgroud)

encoder submit fosuserbundle symfony-2.1

17
推荐指数
1
解决办法
2万
查看次数

在登录表单上禁用CSRF令牌

我正在使用Symfony2.0和FOSUserBundle,并希望在我的登录表单上禁用csrf令牌.

我已经在我的config.yml网站上全局禁用了csrf保护:

framework:
    csrf_protection:
        enabled:        false
Run Code Online (Sandbox Code Playgroud)

这很好用,我的表单中没有添加csrf字段.但是,这不适用于登录表单.仅在此表单上,如果我在表单中不包含令牌,则会收到"无效的CSRF令牌"错误:

<input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />
Run Code Online (Sandbox Code Playgroud)

如何在登录表单上禁用CSRF令牌?

login csrf symfony fosuserbundle symfony-2.0

16
推荐指数
2
解决办法
2万
查看次数

如何在FOSUserBundle中明确禁用注册

在我的项目中,我只允许一个用户管理网站的内容.首先使用命令行添加此用户.

现在,我想让登记行动无法进入,我不知道怎么办?直到现在,我只是将ROLE_ADMIN放在路径寄存器的访问控制中,以避免访问者抛出它.

有小费吗?

symfony fosuserbundle

16
推荐指数
3
解决办法
6838
查看次数

FOSUserBundle:密码重置后的成功目标

在用户使用FOSUserBundle的密码重置重置密码后,默认情况下,他被重定向到FOSUserProfile.我想重定向到另一条路线.这是可能的,如果可以,怎么样?

url-routing symfony fosuserbundle

15
推荐指数
2
解决办法
2万
查看次数

Symfony 2.3:如何从数据库中刷新经过身份验证的用户?

例如,我向控制器中当前经过身份验证的用户授予新角色,如下所示:

$em = $this->getDoctrine()->getManager();
$loggedInUser = $this->get('security.context')->getToken()->getUser();
$loggedInUser->addRole('ROLE_XYZ');

$em->persist($loggedInUser);
$em->flush();
Run Code Online (Sandbox Code Playgroud)

在下一页加载时,当我再次获取经过身份验证的用户时:

$loggedInUser = $this->get('security.context')->getToken()->getUser();
Run Code Online (Sandbox Code Playgroud)

他们没有被授予这个角色.我猜这是因为用户存储在会话中需要刷新.

我该怎么做呢?

如果有所作为,我正在使用FOSUserBundle.

php symfony fosuserbundle

15
推荐指数
3
解决办法
1万
查看次数