小编use*_*963的帖子

如何在Symfony 2中的login_check之后禁用重定向

我需要在登录检查后禁用重定向,因为我只需要获取登录成功与否.提交/ login_check后url给我正确的数据,但保持重定向到/ login(失败时).
之后/ login是空白的.
我正在尝试使用extjs 4设置登录表单,所以我需要通过ajax post请求来验证.login_check应该进行身份验证,创建用户会话并返回它是成功还是失败,但不在任何地方转发.

我的login.html.twig看起来像:

{% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
    { success:true }
{% else %}
    { success: false }
{% endif %}
Run Code Online (Sandbox Code Playgroud)

并在security.yml:

firewalls:
    main:
        form_login:
            provider: fos_userbundle
            failure_path:  null
            failure_forward: false
Run Code Online (Sandbox Code Playgroud)

php symfony

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

Symfony 2根据用户代理属性加载不同的模板

是否可能(以及如何)

  • 确定用户是否正在使用移动设备
  • 强制symfony 2在这种情况下加载不同的模板
  • (并回退默认的html模板)

我喜欢做的是,在不修改任何控制器的情况下加载不同的模板.

UPDATE

这不是检测部分真正的问题,它与symfony无关.它可以在控制器级别上完成(加载不同的模板):

public function indexAction()
{
    $format = $this->isMobile() ? 'mob' : 'html';
    return $this->render('AcmeBlogBundle:Blog:index.'.$format.'.twig');
}
Run Code Online (Sandbox Code Playgroud)

但它可以在全球范围内完成吗?就像服务,或者在每个请求之前执行的东西,并在模板规则中进行更改.

php mobile symfony twig

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

如何在Symfony 2中为数据库视图设置实体(doctrine)

让我们说我有一个视图表.我希望从中获取数据到实体.我可以(以及如何)创建实体类来做到这一点.(不需要保存操作).我只想展示它们.

php mysql symfony doctrine-orm

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

如何从异步函数中抛出异常

我有一个异步函数,我希望在失败时抛出异常.但似乎有些事情阻止了这个:

通过省略try catch块,我希望抛出一个异常,我想在函数之外处理.

我得到的实际结果有点令人困惑:

(node:10636) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): E11000 duplicate key error index.

(node:10636) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

async f(obj) {
    await db.collection('...').save(obj);
}
Run Code Online (Sandbox Code Playgroud)

当我尝试捕获异常并抛出其他内容时,我得到相同的结果:

async f(obj) {
    try {
        await db.collection('...').save(obj);
    } catch(e) {
        throw e.message;
    }
}
Run Code Online (Sandbox Code Playgroud)

该函数是从try块调用的,所以不要看这是一个Unhandled Promise.

我想f用作另一个函数的参数:

g(obj, handler) {
    try {
        handler(obj);
    } catch(e);
        ...
    }
} …
Run Code Online (Sandbox Code Playgroud)

javascript node.js async-await

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

带有连接表和两个连接的DQL查询

我有2个实体:

/**
 * @ORM\Entity
 * @ORM\Table(name="users")
 */
class User
{
    /**
     * @ORM\ManyToMany(targetEntity="Myapp\UserBundle\Entity\Group")
     * @ORM\JoinTable(name="user_groups",
     *      joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
     *      inverseJoinColumns={@ORM\JoinColumn(name="group_id", referencedColumnName="id")}
     * )
     */
    protected $groups;

    ...
}
Run Code Online (Sandbox Code Playgroud)

/**
 * @ORM\Entity(repositoryClass="Myapp\UserBundle\Repository\GroupRepository")
 * @ORM\Table(name="groups")
 */
class Group
  ...
Run Code Online (Sandbox Code Playgroud)

我找不到一种方法来创建一个DQL查询,结果如下:

SELECT g.name, g.id, count( u.id )
FROM users u
LEFT JOIN user_groups ug ON u.id = ug.user_id
RIGHT JOIN groups g ON g.id = ug.group_id
GROUP BY g.id
Run Code Online (Sandbox Code Playgroud)

我试过并失败了:

$this->getEntityManager()
    ->createQuery('
        SELECT g.id, g.name, count(u.id) as usercount FROM MyappUserBundle:User u
        JOIN …
Run Code Online (Sandbox Code Playgroud)

doctrine dql symfony

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

如何从extjs 4商店获取数据

我在一开始就与ext js 4叠加.我试图在使用商店启动应用程序时获取当前用户数据.但我没有从商店获得任何数据,甚至store.count返回0.我发现很多描述如何创建商店,但不知道如何访问其中的数据.
我设法使用Ext ajax请求获取数据,但我认为使用商店会更好,我不能避免它们..

我的模特:

Ext.define('MyApp.model.User', {
   extend: 'Ext.data.Model',
   fields: [ 
        'id',
        'username',
        'email'
    ]
});
Run Code Online (Sandbox Code Playgroud)

我的商店看起来像:

Ext.define('MyApp.store.User.CurrentUser', {
    extend: 'Ext.data.Store',
    requires: 'MyApp.model.User',
    model: 'MyApp.model.User',
    autoLoad: true,

    proxy: {
        type: 'ajax',
        method: 'POST',
        url: Routing.generate('admin_profile'),
        reader: {
            type: 'json',
            root: 'user'
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

返回的json:

{
    "success":true,
    "user":[{
        "id":1,
        "username":"r00t",
        "email":"root@root.root"
    }]
}
Run Code Online (Sandbox Code Playgroud)

和申请:

Ext.application({
    name: 'MyApp', 
    appFolder: '/bundles/myadmin/js/app',
    models: ['MyApp.model.User'],    
    stores: ['MyApp.store.User.CurrentUser'],
    //autoCreateViewport: true,
    launch: function() {
        var currentUser=Ext.create('MyApp.store.User.CurrentUser',{});

        /*
        Ext.Ajax.request({
            url : Routing.generate('admin_profile'),
            method: 'POST',
            success: function(resp) …
Run Code Online (Sandbox Code Playgroud)

javascript extjs extjs4

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

如何从内部参考tabpanels选项卡

我有一个tabpanel,它是表单的一部分(输入字段在不同的选项卡上).如果表单包含无效字段,即使它们不在当前选项卡上,我也需要通知用户提交.我认为最好的方法是更改​​标签颜色.

问题是如何在不引入新ID的情况下获取选项卡按钮的参考?

这是我试图做的事情,因为我引用了标签内部主体,并且还有一个直到整个标签面板

...
xtype:'tabpanel',
plain:true,
activeTab: 0,
height:190,
margin: '10 0 0 0',
items: [{
    title: 'Personal',
    layout:'column',
    border:false,
    items:[{
        columnWidth:.5,
        border:false,
        layout: 'anchor',
        defaultType: 'textfield',
        items: [{
             fieldLabel: 'Email',
             name: 'user[email]',
             allowBlank: false,
             listeners: {
                 'validitychange': function(th, isvalid, eOpts) {
                     if(!isvalid) {
                         alert(this.up().up().getId());
                     };
                 }
             },
             vtype:'email',
             anchor:'95%'
        }]
    }]
}]
Run Code Online (Sandbox Code Playgroud)

extjs extjs4

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

Symfony 2 bundle依赖问题

我创建了一个包来管理用户组权限.我希望它通过将项目移动到供应商目录来使项目独立.
为了使这个包不可变,我将用户数据移动到usermeta包中.
主捆绑包含有关用户的用户名和电子邮件,而usermeta包含其他所有内容(名称,生日等,无论项目需要什么).

问题是主要用户捆绑包意图属于核心捆绑组,每个项目使用相同的捆绑组.
user-usermeta关系现在创建了一个依赖项.所以每个项目都需要它.

我的问题是
- 我如何标准化其格式,在每个项目中强制执行它.
- 如何使此依赖项可选(首选)

doctrine symfony doctrine-orm

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

如何动态调用树枝过滤器

我需要使用特定于每种数据类型的过滤器呈现未知类型的数据:

渲染的结构看起来像:

array(
    "value"  => "value-to-render",
    "filter" => "filter-to-apply",
)

{% for item in items %}
    {{ item.value|item.filter|raw}}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:如何使用item.filter作为值的过滤器?

symfony twig

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

如何为Symfony 2表单类型设置多个翻译域

我有休闲的表单结构:

abstract class BaseContentType extends AbstractType {
    public function buildForm(FormBuilderInterface $builder, array $options) {
        //common fields
    }
    public function getDefaultOptions() {
        return array(
            'translation_domain' => 'MyBaseBundle',
            'isNew' => false,
        );
    }
 }

class SpecializedContentType extends BaseContentType {
    public function buildForm(FormBuilderInterface $builder, array $options) {
        parent::buildForm($builder, $options);
        //more fields....
    }

    public function getName() {
        return 'specialized_content';
    }

    public function setDefaultOptions(OptionsResolverInterface $resolver) {
        $options = $this->getDefaultOptions() + array(
            'data_class' => 'whatever\Entity\Specialized',
        );
        $resolver->setDefaults($options);
    }
}
Run Code Online (Sandbox Code Playgroud)

对于BaseContentType和每个子类,我需要具有不同的转换域。

如何为类及其父级添加单独的翻译域?

php forms symfony

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

标签 统计

symfony ×7

php ×4

doctrine ×2

doctrine-orm ×2

extjs ×2

extjs4 ×2

javascript ×2

twig ×2

async-await ×1

dql ×1

forms ×1

mobile ×1

mysql ×1

node.js ×1