Article我和实体之间有一对多关系Image。我创建了文章的形式,如下所示:
class ArticleType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('articleTitle','text',array('required' => false))
->add('articlePrice','number',array('required' => false))
->add('images', new ImageType())
;
}
....
}
Run Code Online (Sandbox Code Playgroud)
和
class ImageType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('file', 'file',array('required' => false))
;
}
....
}
Run Code Online (Sandbox Code Playgroud)
我在验证文件属性时遇到问题。我的目标是当用户选择任何文件时返回错误消息(至少一个图像应与文章相关联)。我尝试断言NotBlank但它不起作用。
<?php
....
use Symfony\Component\Validator\Constraints as Assert;
class Image
{
/**
* Image file
*
* @var File
* @Assert\NotBlank
*/
private $file;
....
}
Run Code Online (Sandbox Code Playgroud)
我在创建表单时不会 …
我正在阅读有关函数声明与函数表达式的内容,我无法弄清楚以下语句的含义:
函数声明作为独立构造出现,不能嵌套在非函数块中.
有人请用一个例子解释作者的意思,准确地说:"......不能嵌套在非功能块中".
链接是:https://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-function-expressions/
如何在现有Symfony2项目中直接使用库.例如,我试图添加faker库.我通过composer安装它,但我不知道如何以及在哪里放置我需要的代码.
根据文件:
// require the Faker autoloader
require_once '/path/to/Faker/src/autoload.php';
// alternatively, use another PSR-0 compliant autoloader (like the Symfony2 ClassLoader for instance)
Run Code Online (Sandbox Code Playgroud)
什么是自动装载机的简单说明?如何在没有捆绑的情况下直接使用库?是否要求库拥有一个autoload.php文件,以便它可以集成到php项目中?在哪里放上面的代码?
任何解释新手概念的链接?非常感谢您的平常指导.
我需要使用 foreach 语句使用 Doctrine QueryBuilder 创建一个查询,目前,使用以下一个但不是最正确的:
// $query object
foreach ($searches as $value) {
$query->andWhere($query->expr()->orX(
$query->expr()->eq('c.firstName', ':name'),
$query->expr()->eq('c.lastName', ':name')
))->setParameter('name', $value);
}
Run Code Online (Sandbox Code Playgroud)
这给了我:
....WHERE .... AND (a0_.first_name = ? OR a0_.last_name = ?) AND (a0_.first_name = ? OR a0_.last_name = ?) ORDER BY a0_.first_name ASC
虽然我需要:
...WHERE ..... AND (a0_.first_name = ? OR a0_.last_name = ? OR a0_.first_name = ? OR a0_.last_name = ?) ORDER BY a0_.first_name ASC
我需要这样的东西,但PHP当然不允许:
// $query object
$query->andWhere($query->expr()->orX(
foreach ($searches as $value) {
$query->expr()->eq('c.firstName', ':name'), …Run Code Online (Sandbox Code Playgroud) 我有一个wordpress网站.在single.php,我有以下body标记
<body <?php body_class(); ?> onLoad="func(<?php echo $thePostID?>);" >
Run Code Online (Sandbox Code Playgroud)
在网上阅读文章让我确信避免使用内联CSS和内联javascipt.所以我对我的网站进行了重组,以便样式和脚本现在包含在外部文件中.除了这行代码,因为它确实需要the post id,我不知道如何在single.php之外检索它.
您的平常帮助表示赞赏.
我在我的php文件中使用下面的代码从多个复选框中获取值.
if(!empty($_POST['check_list'])) {
foreach($_POST['check_list'] as $check) {
update_comment_meta($check, 'consider', 1);
}
}
Run Code Online (Sandbox Code Playgroud)
问题是这个代码显然$_POST['check_list']只在数组中放入了检查值.
我需要update_comment_meta通过将'0'作为第三个参数而不是'1'来对未设置的值执行该功能.
有关更多详细信息,我给出了生成HTML表单的代码:
<form action="" id="primaryPostForm" method="POST">
<?php
$defaults = array(
'post_id' => $current_post);
$com= get_comments( $defaults );
foreach ($com as $co) {
if(get_comment_meta($co->comment_ID, 'consider', true)==1) {
?><input type="checkbox" name="check_list[]" value="<?php echo $co->comment_ID; ?>" checked="checked">
<?php }
else {
?><input type="checkbox" name="check_list[]" value="<?php echo $co->comment_ID; ?>" >
<?php
}}
</form>
Run Code Online (Sandbox Code Playgroud)
您的平常帮助总是受到赞赏.
版本1.4.1.4的prestashop网站正在处理category.php类别页面的文件.对1.6.0.6 unfortunatley的更新删除了该文件,因为它已被视为已弃用.(CMS更新后URL结构发生了变化)
一个结果是URL结构的变化.
从:
URL/category.php?id_category = 6
至 :
URL /的index.php?id_category = 6&控制器=类别&id_lang = 2
所以现在,第一个URL结构给出了404.
问题:
我们不知道为什么所有的类别页面与新strucure做工精细,除了页面Home(acceuil)类别(全球父类的所有网站类别).home即使使用新结构,此类别页面也会给出404.换句话说,以下网址无效:
URL /的index.php?id_category = 1&控制器=类别&id_lang = 2
如果我没错,Prestashop默认将id = 1给予此home类别?你的观点出了什么问题?任何见解都受到高度赞赏.
根据Prestashop-Developper.co回答编辑
当我在PhpMyAdmin中检查我的数据库时:
从1.4.1.4更新到1.6.0.6之后:
我既没有找到id = 0的类别,也没有找到id = 2的类别.我只找到id = 1的类别Home和id = 104的类别Root.Root是Home的父级,但Home的字段is_root_category设置为1 !!!! 我真的不理解任何事情.
在从1.4.1.4更新到1.6.0.6之前:
根本没有Root类别,根本没有任何is_root_category字段.
注意: 这些观察结果基于以下表:ps_category,ps_category_group,ps_category_product,ps_category_shop在updtate之前和之后= 1.4.1.4到1.6.0.6之间.
我观察到所有产品的数量不等于 category 中的产品数量home。这是因为在产品添加过程中并不总是选择这个最大的父类别。所以有些产品属于home但有些不属于。
虽然我需要为类别home页面显示正确数量的产品,但我正在数据库中查找包含类别但未在ps_product或 中 找到它们的列ps_product_lang。
可以批量修改数据库中相应字段的sql查询背后的想法是什么,以便我的所有产品都属于 category home。
感谢您通常的帮助。谢谢你。
编辑:
我发现数据库中的表是ps_category_product. 它是唯一的吗?
这张表是这样的:
+-------------+------------+----------+
| id_category | id_product | position |
+-------------+------------+----------+
| 11 | 1 | 1 |
| 11 | 2 | 2 |
| 11 | 10 | 3 |
+-------------+------------+----------+
Run Code Online (Sandbox Code Playgroud)
我可能需要创建 x 行(x = 产品数量)。每行都有 id_category=1 和 id_product= product id 和 position= position++。是最好的方法吗?
关于如何在 sql 中实现它的任何帮助?
再次感谢。
我想在Symfony 2.3.24/Windows7/PHP 5.4.7下熟悉测试(单元,功能).
似乎PHPUnit安装正确(通过Composer),但是当我运行phpunit -c app/命令时,我收到以下错误:
Warning: require_once(PHP/CodeCoverage/Filter.php): failed to open stream: No such file or directory in C:\xampp\php\phpunit on line 38
Fatal error: require_once(): Failed opening required 'PHP/CodeCoverage/Filter.php' (include_path='.;C:\xampp\php\PEAR') in C:\xampp\php\phpunit on line 38
Run Code Online (Sandbox Code Playgroud)
我用谷歌搜索这个问题无济于事.我另外在官方的PHPUnit网站上找到了The code coverage report feature requires the Xdebug (2.1.3 or later) and tokenizer extensions.
你怎么看待这一切?非常感谢您的帮助.
我试图理解PSR-0中的例子,但无济于事.我知道那\是目录分隔符(至少在我的Windows操作系统中),并且在我的拙见中,它不能等同于/.我用谷歌搜索他们之间的差异,发现没有结果.
php ×6
symfony ×4
javascript ×2
prestashop ×2
wordpress ×2
checkbox ×1
composer-php ×1
doctrine ×1
foreach ×1
forms ×1
html ×1
http-post ×1
inline-code ×1
jquery ×1
phpunit ×1
reflow ×1
sql ×1
testing ×1
updates ×1
webpage ×1