Questions tagged «symfony»

Symfony既指用于构建Web应用程序的PHP框架,也指用于构建该框架的一组组件。此标记引用当前支持的主要版本2.x,3.x,4.x和5.x。或者,您可以使用相应的标签指定确切的版本。此标签不应用于有关Symfony 1.x的问题。请改用Symfony1标签。

4
Symfony 2 EntityManager注入服务
我已经创建了自己的服务,并且需要注入原则EntityManager,但是我没有看到__construct()在我的服务上调用该方法,并且注入不起作用。 这是代码和配置: <?php namespace Test\CommonBundle\Services; use Doctrine\ORM\EntityManager; class UserService { /** * * @var EntityManager */ protected $em; public function __constructor(EntityManager $entityManager) { var_dump($entityManager); exit(); // I've never saw it happen, looks like constructor never called $this->em = $entityManager; } public function getUser($userId){ var_dump($this->em ); // outputs null } } …

3
访问模板中的登录用户
我正在使用FOSuserbundle来开始用户注册https://github.com/FriendsOfSymfony/FOSUserBundle 我已经注册/登录和注销了。我现在想做的就是获取已登录的用户数据,并将其显示在我网站的每个页面上。就像事物的标题类型中的“ Hi用户名”一样。 似乎在我的app / Resources / views / base.html.twig中嵌入控制器是执行此操作的最佳方法http://symfony.com/doc/current/book/templating.html#embedding-controllers 因此,我编写了控制器来访问用户配置文件数据。我不知道如何在嵌入式控制器中访问FOS方法。因此,从我的Acme / UserBundle / Controller / UserController.php中,我想这样做: public function showAction() { $user = $this->container->get('security.context')->getToken()->getUser(); if (!is_object($user) || !$user instanceof UserInterface) { throw new AccessDeniedException( 'This user does not have access to this section.'); } return $this->container->get('templating') ->renderResponse('FOSUserBundle:Profile:show.html.'.$this->container ->getParameter('fos_user.template.engine'), array('user' => …

9
访问Symfony2请求对象中的POST值
好的,这是一个新手问题,但是我在任何地方都找不到答案。在Symfony2中的控制器中,我想从我的一个表单中访问POST值。在控制器中,我有: public function indexAction() { $request = $this->get('request'); if ($request->getMethod() == 'POST') { $form = $this->get('form.factory')->create(new ContactType()); $form->bindRequest($request); if ($form->isValid()) { $name_value = $request->request->get('name'); 不幸的$name_value是没有返回任何东西。我究竟做错了什么?谢谢!
93 php  symfony  http-post 

1
Cascade = {“删除”} VS orphanRemoval = true VS ondelete =“ CASCADE
我尝试收集一些有关以下方法的信息,这些方法是在删除父实体时自动删除子实体的。似乎最常见的方法是使用这三个注释之一:层叠= {“删除”} OR orphanRemoval = true或ondelete =“ CASCADE”。 我对第三个混淆不清:ondelete =“ CASCADE”,因为在教义的官方文档中对此的解释非常稀缺),如果有人可以确认我从我的研究中收集并理解的以下信息,我将非常希望网络和经验... 它能做什么 Cascade = {“ remove”} ==>如果拥有拥有者实体,则删除拥有相反实体的实体。即使您与其他拥有的附属实体有很多关系。 -应该在集合上使用(因此在OneToMany或ManyToMany关系中使用)-ORM中的 实现 orphanRemoval = true ==>当拥有方实体为AND时,将删除反方的实体,并且该实体不再与任何其他拥有方实体连接。(参考 doctrine official_doc -ORM中的实现 -可以与OneToOne,OnetoMany或ManyToMany一起使用 onDelete =“ CASCADE” ==>这会将On Delete Cascade添加到数据库中的外键列中 -这种策略有点棘手,但是可以非常强大和快速。(请 参阅doctrine official_doc ...,但尚未阅读更多说明) -ORM要做的工作更少(与前两种方法相比),因此应该具有更好的性能。 其他信息 -所有这三种方式都是在双向关系实体上实现的(右???) -使用cascade = {“ remove”}完全绕过onDelete = CASCADE上的任何外键。(参考doctrine_official_doc) 有关如何在代码中使用它的示例 orphanRemoval和cascade = {“ …

3
Symfony2和主义-错误:无效的PathExpression。必须是StateFieldPathExpression
我有一个看起来像这样的实体: /** * @Gedmo\Tree(type="nested") * @ORM\Table(name="categories") * @ORM\Entity() */ class Category extends BaseCategory { /** * @ORM\OneToMany(targetEntity="Category", mappedBy="parent") */ protected $children; /** * @Gedmo\TreeParent * @ORM\ManyToOne(targetEntity="Category", inversedBy="children") * @ORM\JoinColumn(name="parent_id", referencedColumnName="id", onDelete="SET NULL") */ protected $parent; } 我试图运行这样的查询: $qb = $this->em->createQueryBuilder() ->select('c.parent') ->from('Category', 'c'); $result = $qb->getQuery()->getArrayResult(); 但是,我收到以下错误: [Semantical Error] ... …

12
在文件系统中移动类后,“类XXX不是有效实体或映射的超类”
我在Aib \ PlatformBundle \ Entity \ User.php中有一个实体类 我通过尝试创建其表单类没有问题 PHP应用程序/控制台原则:生成:表单AibPlatformBundle:用户 现在,我已将名称空间更改为Aib \ PlatformBundle \ Entity \ Identity \ User,但是当我尝试使用任务生成表单时,我在其之前说过: “类Aib \ PlatformBundle \ Entity \ User不是有效的实体或映射的超类。” 这是文件内容: <?php namespace Aib\PlatformBundle\Entity\Identity; use Doctrine\ORM\Mapping as ORM; /** * Aib\PlatformBundle\Entity\Identity\User * * @ORM\Table() * @ORM\Entity(repositoryClass="Aib\PlatformBundle\Entity\Identity \UserRepository") */ class User { ... 任何想法? symfony2.0.4


2
新的Symfony 3目录结构是什么?
我刚刚使用常规的composer命令创建了一个新的Symfony 2.5项目: php composer.phar create-project symfony/framework-standard-edition path/ 2.5.0 终端问我: 您想使用Symfony 3目录结构吗? 这是什么Symfony的3目录结构?我以前从未见过... 2.5以后是新的吗? 使用它有什么好处? 有什么办法可以复制此目录结构吗?
90 symfony 

5
如何在symfony2控制器中发送JSON响应
我正在jQuery编辑内置的表单Symfony。 我在jQuery对话框中显示表单,然后提交。 数据已正确输入数据库。 但是我不知道是否需要发一些JSON回jQuery。其实我对JSON事情有点困惑。 假设我在表中添加了``jQuery,并且当我提交表单时,然后在提交数据之后,我想发回那些行数据,以便我可以动态添加表行以显示添加的数据。 我很困惑如何获取这些数据。 这是我当前的代码: $editForm = $this->createForm(new StepsType(), $entity); $request = $this->getRequest(); $editForm->bindRequest($request); if ($editForm->isValid()) { $em->persist($entity); $em->flush(); return $this->render('::success.html.twig'); } 这只是带有成功消息的模板。
90 php  javascript  json  symfony 


12
如何在Symfony 2.0 AJAX应用程序中将Doctrine实体编码为JSON?
我正在开发游戏应用程序并使用Symfony 2.0。我对后端有很多AJAX请求。更多的响应是将实体转换为JSON。例如: class DefaultController extends Controller { public function launchAction() { $user = $this->getDoctrine() ->getRepository('UserBundle:User') ->find($id); // encode user to json format $userDataAsJson = $this->encodeUserDataToJson($user); return array( 'userDataAsJson' => $userDataAsJson ); } private function encodeUserDataToJson(User $user) { $userData = array( 'id' => $user->getId(), 'profile' => array( 'nickname' => $user->getProfile()->getNickname() ) …

4
将数据传递到Symfony 2.8、3.0及更高版本中的buildForm()
按照此答案中的建议,我的应用程序当前使用构造函数将数据传递到表单类型。但是,Symfony 2.8升级指南建议不要将类型实例传递给createForm函数: 将类型实例传递给Form :: add(),FormBuilder :: add()和FormFactory :: create *()方法已过时,在Symfony 3.0中不再受支持。而是传递该类型的标准类名。 Before: $form = $this->createForm(new MyType()); After: $form = $this->createForm(MyType::class); 看来我无法使用完全合格的类名传递数据,还有其他选择吗?
87 php  symfony 

18
EntityManager已关闭
[Doctrine\ORM\ORMException] The EntityManager is closed. 在插入数据时出现DBAL异常后,EntityManager关闭并且无法重新连接。 我尝试过这种方法,但是没有连接。 $this->em->close(); $this->set('doctrine.orm.entity_manager', null); $this->set('doctrine.orm.default_entity_manager', null); $this->get('doctrine')->resetEntityManager(); $this->em = $this->get('doctrine')->getEntityManager(); 有人知道如何重新连接吗?

4
如何修复“将myBundle添加到asseticBundle配置” symfony2异常?
当我尝试使用TWIG{% javascript %}标记链接到我的.js文件时,它返回以下异常: An exception has been thrown during the compilation of a template ("You must add CompetitiongameBundle to the assetic.bundle config to use the {% javascripts %} tag in CompetitiongameBundle:game:index.html.twig.") in "CompetitiongameBundle:game:index.html.twig". 我的index.html.twig样子: {% javascripts 'CompetitiongameBundle/Resources/views/public/js/*'%} <script type="text/javascript" src="{{ asset_url }}" ></script> {% endjavascripts %} Hello {{ name }}! …
84 php  symfony  twig 

1
如何检查Symfony2的Twig模板引擎中是否存在对象?
我有一个多维数组,其中某些对象存在而其他对象不存在。我不断得到 对象“ stdClass”的方法“代码”在...中不存在? 我在模板中使用的代码是: {% for item in items %} <p>{% if item.product.code %}{{ item.product.code }}{% endif %}</p> {% endfor %} 某些产品没有此代码,很遗憾,此数据结构是通过供稿提供的,因此我无法更改它。 当我查看Twig文档时,我解释说,如果没有对象或方法,它将返回null?
84 symfony  twig 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.