小编Wou*_*r J的帖子

如何设置请求symfony的内容?

我手动生成表单的请求内容,并希望设置如下数据:

form[1][]=2&form[2][]=3&form[3][]=5&form[4][]=8&form[apply]=
Run Code Online (Sandbox Code Playgroud)

Symfony Request对象有一个getContent()方法,但没有setContent().

如何设置内容?

request symfony-forms symfony

7
推荐指数
2
解决办法
3512
查看次数

ReferenceError:找不到变量:jQuery

我正在尝试将jgesture插件用于pinchopen和pinchclose事件。但我收到以下错误:

ReferenceError:找不到变量:jQuery

有没有人知道解决方案?谢谢

jquery html5

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

如何在 git 中重命名文件夹并使用交互式 rebase 隐藏它?

我有一个项目,在项目过程中我意识到我不喜欢目录的名称。

在 GIT 中,我们可以重命名目录然后提交,但历史记录仍会显示较旧的文件夹。

我想将名称更改重新设置为较早的提交。所以我通常会做的是:

git rebase -i origin/master
Run Code Online (Sandbox Code Playgroud)

然后将文件夹重命名提交移到顶部。
然而,正如预期的那样,git 会产生很多需要解决的冲突。

有没有更自动化的方法来做到这一点?

git git-rebase

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

如何使用Dql获取2个日期之间的差异

如何使用Dql获取2个日期之间的差异?

我尝试了以下代码,但是没有用.

$query =$this->_em->createQuery('select a,DATEDIFF(d,\'now\',a.date) from ABundle:Abonment a where d==1');
Run Code Online (Sandbox Code Playgroud)

我怎么解决这个问题?

dql symfony doctrine-orm

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

Composer选项使用composer.json的替代方法?

我刚开始使用Composer功能,你告诉它查看本地目录中的依赖项,这样你就可以开发一个库和一些并行使用该库的东西,而不必一直推送到git来更新,这是真棒.例如

"repositories": [
    {
        "type": "vcs",
        "url": "/documents/projects/github/guzzle"
    }
],

"require":{
    "guzzle/guzzle": "3.7.*@dev"
}
Run Code Online (Sandbox Code Playgroud)

因此,当您进行作曲家更新时,Composer将从本地目录中提取Guzzle的版本,因此您可以在另一个使用该库的应用程序中测试库的代码,而无需在每次代码更改之间推送到存储库.

但是我几乎在composer.json中检查了我的项目 - 这显然不适用于任何elses机器.

反正有没有告诉作曲家使用不同于composer.json的文件,或者其他方式能够告诉作曲家安全地使用本地目录,而不是很有可能意外地将一个破碎的composer.json版本提交到你的存储库?

composer-php

6
推荐指数
2
解决办法
3241
查看次数

覆盖路由器并将参数添加到特定路由(在使用路径/ url之前)

我会使用一个简单的管理路由系统.

例如我现在有这条路线.

_welcome                    ANY      ANY    ANY  /
acmedemo_example_index      ANY      ANY    ANY  /acme/demos
acmedemo_example_edit       ANY      ANY    ANY  /acme/edit/{id}
acmedemo_example_delete     ANY      ANY    ANY  /acme/delete/{id}
acmeapi_backup_get          GET      ANY    ANY  /api/acme
acmeapi_backup_edit         POST     ANY    ANY  /api/acme
Run Code Online (Sandbox Code Playgroud)

现在我将当前用户ID添加到每个路由,因为如果用户向我或其他支持者/管理员发送链接,我们将看到用户看到的内容.你明白?

我现在就有这个.

_welcome                    ANY      ANY    ANY  /
acmedemo_example_index      ANY      ANY    ANY  /{user}/acme/demos
acmedemo_example_edit       ANY      ANY    ANY  /{user}/acme/edit/{id}
acmedemo_example_delete     ANY      ANY    ANY  /{user}/acme/delete/{id}
acmeapi_backup_get          GET      ANY    ANY  /api/acme
acmeapi_backup_edit         POST     ANY    ANY  /api/acme
Run Code Online (Sandbox Code Playgroud)

现在是"问题"......如果路由名称匹配,我想自动为每条路由添加"user"参数preg_match('/^acmedemo_/i').

例如(index.html.twig):

<a href="{{ path('acmedemo_example_index') }}">Show demos</a>
Run Code Online (Sandbox Code Playgroud)

要么

<a href="{{ path('acmedemo_example_edit', {id: entity.id}) }}">Edit …
Run Code Online (Sandbox Code Playgroud)

routing symfony

6
推荐指数
2
解决办法
5726
查看次数

symfony2选民或acl

我正在建立系统并试图在选民和ACL之间做出决定.我需要实现的是应该有不同角色的用户访问对象属性,例如:经过身份验证的常规用户可以看到Post及其内容,但不能看到它的"Position"属性,而具有编辑角色的用户也可以看到Post和它的内容,并有权看到"位置"属性并进行编辑.我可以通过单独使用选民来实现此功能,还是需要使用ACL?

编辑:

对于令人困惑的问题我很抱歉,我是symfony的新手并且还不太了解这些概念.我想要实现的是对象字段级别的权限. 在此输入图像描述

普通用户可以访问"TITLE"和"CONTENT"属性,并修改"CONTENT"属性",主持人可以查看和编辑以前的两个属性,管理员应该可以访问所有对象属性,并对它们执行任何操作.

acl symfony

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

如何使用Prophecy来测试您正在测试的类中的方法?

我想第一次使用Prophecy("phpspec/prophecy-phpunit")为我的类创建单元测试.我想测试一个在同一个服务中调用另一个函数的函数,这里是代码:

class UserManager
{
    private $em;
    private $passwordHelper;

    public function __construct(\Doctrine\ORM\EntityManager $em, \MainBundle\Helper\PasswordHelper $passwordHelper)
     {
         $this->em = $em;
         $this->passwordHelper = $passwordHelper;
     }

     public function getUserForLdapLogin($ldapUser)
     {
          $dbUser = $this
              ->em
              ->getRepository('MainBundle:User')
              ->findOneBy(array('username' => $ldapUser->getUsername()));

         return (!$dbUser) ?
              $this->createUserFromLdap($ldapUser) :
              $this->updateUserFromLdap($ldapUser, $dbUser);
     }
Run Code Online (Sandbox Code Playgroud)

我遇到的第一个问题是我正在使用findOneByUsername和预言,据我所知,不允许你:模拟魔术方法(_callfor EntityRepository),不存在的模拟方法,模拟你正在测试的类.如果这些都是真的我有点腌渍,这意味着我不能测试这个函数而不测试类中的其他函数.

到目前为止,我的测试看起来像这样:

class UserManagerTest extends \Prophecy\PhpUnit\ProphecyTestCase
{

      public function testGetUserForLdapLoginWithNoUser()
      {
          $ldapUser = new LdapUser();
          $ldapUser->setUsername('username');

          $em = $this->prophesize('Doctrine\ORM\EntityManager');
          $passwordHelper = $this->prophesize('MainBundle\Helper\PasswordHelper');

          $repository = $this->prophesize('Doctrine\ORM\EntityRepository');
          $em->getRepository('MainBundle:User')->willReturn($repository);
          $repository->findOneBy(array('username' => 'username'))->willReturn(null);

          $em->getRepository('MainBundle:User')->shouldBeCalled(); …
Run Code Online (Sandbox Code Playgroud)

php phpunit symfony prophecy

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

从Symfony2中的服务调用createForm()和generateUrl()

我想从我的自定义服务访问控制器方法.我创建了类MyManager,我需要调用它内部createForm()generateUrl()函数.在控制器中我可以使用:$this->createForm(...)$this->generateUrl(...),但服务有什么用?有可能的?我真的需要这种方法!我应该使用什么参数?

php symfony

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

如果我没有登录,Symfony防火墙不会重定向我

好的,我已经花了10个小时为我的问题搜索解决方案.如果我没有登录,我在Symfony 2.7上的防火墙不会重定向我.

如果我继续使用domain.com/admin/,防火墙应该重定向/登录,但不是.

我使用FOSUSerBundle.我总是得到这个错误信息:

您未经过身份验证401 Unauthorized - HttpException 1链接异常:AuthenticationCredentialsNotFoundException»

这是我的代码:

security:
    encoders:
        FOS\UserBundle\Model\UserInterface: sha512
    providers:
        fos_userbundle:
            id: fos_user.user_provider.username

firewalls:
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false
    admin:
        pattern: ^/
        context: site
        form_login:
            provider: fos_userbundle
            check_path: /login_check
            login_path: /login
        logout:
            path: /admin/logout
        anonymous: false
Run Code Online (Sandbox Code Playgroud)

我的访问控制:

access_control:
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/admin/, role: ROLE_ADMIN }
Run Code Online (Sandbox Code Playgroud)

如果您愿意,这是PhpStorm中的代码: 此搜索

谢谢你的帮助!

php firewall login symfony

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