我需要为我的SF2发行版安装一个软件包(DoctrineFixtures).
我跑的时候
php composer.phar update
Run Code Online (Sandbox Code Playgroud)
我明白了
- Updating twig/twig (dev-master 39d94fa => v1.13.0)
The package has modified files:
M CHANGELOG
M doc/filters/batch.test
M doc/filters/index.rst
M doc/filters/url_encode.rst
M doc/functions/index.rst
M doc/tags/index.rst
M doc/tests/index.rst
M lib/Twig/Autoloader.php
M lib/Twig/Compiler.php
M lib/Twig/CompilerInterface.php
-10 more files modified, choose "v" to view the full list
Run Code Online (Sandbox Code Playgroud)
看来最后一位开发人员在供应商内编辑了很多文件.
为了解决这个问题,我试过了
php composer.phar update <package_name>
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.如何从composer.json更新/安装一个库?
我试图做一个简单的例子,以便学习如何从父表中删除一行,并使用Doctrine2自动删除子表中的匹配行.
这是我正在使用的两个实体:
Child.php:
<?php
namespace Acme\CascadeBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\Table(name="child")
*/
class Child {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity="Father", cascade={"remove"})
*
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="father_id", referencedColumnName="id")
* })
*
* @var father
*/
private $father;
}
Run Code Online (Sandbox Code Playgroud)
Father.php
<?php
namespace Acme\CascadeBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\Table(name="father")
*/
class Father
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
}
Run Code Online (Sandbox Code Playgroud)
这些表是在数据库上正确创建的,但是没有创建On Delete Cascade选项.我究竟做错了什么?
如何在Symfony 2中获取当前路线?
例如,routing.yml:
somePage:
pattern: /page/
defaults: { _controller: "AcmeBundle:Test:index" }
Run Code Online (Sandbox Code Playgroud)
我怎样才能获得这个somePage价值?
我的一个实体中的一个字段是"日期时间"变量.
如何将此字段转换为字符串以在浏览器中呈现?
这是一段代码:
{% for game in games %}
...
<td> {{game.gameTeamIdOne.teamName}} </td>
<td> {{game.gameTeamIdTwo.teamName}} </td>
<td> {{game.gameDate}}</td>
</tr>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
这是我的实体类中的变量:
/**
* @var date $gameDate
*
* @ORM\Column(name="GAME_DATE", type="datetime", nullable=true)
*/
private $gameDate;
Run Code Online (Sandbox Code Playgroud)
这是我得到的错误消息:
在渲染模板期间抛出异常("Catchable Fatal Error:类DateTime的对象无法转换为...\app\cache\dev\twig\9b\ad\58fd3bb1517632badf1fdc7fa4a8.php第33行中的字符串" )在第10行的"BeerBundle:Games:gameTable.html.twig"中.
我是symfony2的新手并且正在阅读symblog.在尝试使用数据夹具的第三章中,我尝试了以下命令:
php composer.phar update
但是我得到了错误:
Could not open input file: composer.phar
所以我用Google搜索了一下并试了一下
php composer.phar install
Run Code Online (Sandbox Code Playgroud)
但仍然得到同样的错误.所以请指导如何处理这个作曲家在symfony2中使用wamp安装新的扩展或数据包等捆绑包.
我是symfony的新手.在其他语言如java和其他语言中我可以request.getParameter('parmeter name')用来获取值.
我们可以用symfony2做类似的事吗.
我见过一些例子,但没有一个对我有用.假设我有一个名称为username的表单字段.在表单操作中,我尝试使用以下内容:
$request = $this->getRequest();
$username= $request->request->get('username');
Run Code Online (Sandbox Code Playgroud)
我也试过了
$username = $request->getParameter('username');
和
$username=$request->request->getParameter('username');
Run Code Online (Sandbox Code Playgroud)
但是没有一个选项可行.但是后续工作正常:
foreach($request->request->all() as $req){
print_r($req['username']);
}
Run Code Online (Sandbox Code Playgroud)
我在哪里使用getParameter()方法做错了.任何帮助将不胜感激.
我已经为我的config.yml文件添加了一个设置:
app.config:
contact_email: somebody@gmail.com
...
Run Code Online (Sandbox Code Playgroud)
对于我的生活,我无法弄清楚如何将其读入变量.我在我的一个控制器中尝试过这样的东西:
$recipient =
$this->container->getParameter('contact_email');
Run Code Online (Sandbox Code Playgroud)
但我得到一个错误说:
必须定义参数"contact_email".
我已经清除了我的缓存,我也在Symfony2重新加载的站点文档中查看了所有内容,但我无法找到如何执行此操作.
可能现在太累了,无法弄明白这一点.有人能帮忙吗?
我正在使用Doctrine的QueryBuilder来构建查询,我想从查询中获得结果的总数.
$repository = $em->getRepository('FooBundle:Foo');
$qb = $repository->createQueryBuilder('n')
->where('n.bar = :bar')
->setParameter('bar', $bar);
$query = $qb->getQuery();
//this doesn't work
$totalrows = $query->getResult()->count();
Run Code Online (Sandbox Code Playgroud)
我只想对此查询运行计数以获取总行数,但不返回实际结果.(在此计数查询之后,我将使用maxResults进一步修改查询以进行分页.)
我有一个Symfony2 Twig模板.我想在此twig模板中输出config参数的值(版本号).因此我定义了config参数,如下所示:
parameters:
app.version: 0.1.0
Run Code Online (Sandbox Code Playgroud)
我可以在控制器中使用此配置参数,但我不知道如何在我的Twig模板中获取它.
symfony ×10
php ×5
composer-php ×2
doctrine-orm ×2
twig ×2
architecture ×1
bundle ×1
datetime ×1
routing ×1
wamp ×1