小编Hen*_*gen的帖子

带有额外字段的Doctrine 2和Many-to-many链接表

(对不起我的语无伦次问题:我在撰写这篇文章时试图回答一些问题,但这里是:)

我正在尝试在链接表中创建一个具有多对多关系的数据库模型,但每个链接也有一个值,在这种情况下是一个库存表.(这是我遇到的更多问题的一个基本示例,但我想我会在继续之前用它测试它).

基本多商店,多产品存储系统的数据库模型

我已经使用exportmwb为这个简单的例子生成了两个Entities Store和Product,两者都显示在下面.

但是,现在的问题是我无法弄清楚如何使用Doctrine访问stock.amount值(signed int,因为它可能是负数).此外,当我尝试使用doctrine的orm创建表时:schema-tool:create function

从HeidiSQL看到的数据库布局

这只产生了两个实体和三个表,一个是没有值的链接表和两个数据表,因为多对多关系本身不是实体,因此我只能将Product和Store作为实体.

所以,从逻辑上讲,我尝试更改我的数据库模型,将库存作为一个单独的表,与商店和产品的关系.我还重写了字段名,只是为了能够将其排除为问题的根源:

更改数据库布局

然后我发现我仍然没有得到Stock实体......而且数据库本身没有'amount'字段.

我真的需要能够将这些商店和产品捆绑在一个库存表(以及其他东西)中......所以只是在产品本身上添加库存不是一种选择.

root@hdev:/var/www/test/library# php doctrine.php orm:info
Found 2 mapped entities:
[OK]   Entity\Product
[OK]   Entity\Store
Run Code Online (Sandbox Code Playgroud)

当我创建数据库时,它仍然没有在stock表中给我正确的字段:

从HeidiSQL看到的数据库布局

所以,在这里查看一些内容,我发现多对多连接不是实体,因此不能有值.所以我尝试将它更改为一个与其他表有关系的单独表,但它仍然无效.

我在这做错了什么?

php mysql doctrine-orm

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

Magento:如何以编程方式将基本图像设置为列表中的第一个图像

问题

现在的情况

我遇到了第三方离子加载器编码的feedloader插件的问题,原始作者不再支持它(因为他们已经开始了)而不是花两周的时间从头开始写它,我已经决定修复导入运行后的问题.

兼容性

唯一的问题是:我想使用Mage库中的函数来编写它,而不是依赖于在Magento的下一次更新中可能会破坏的一些自定义查询,或者每当我在数据库中更改某些内容时(我只是想了解Magento的核心功能更好我猜)

问题诊断

除了设置基本图像(小图像和缩略图图像设置正确)之外,导入几乎所有内容都是正确的,如下面的屏幕截图所示:

第一个也是唯一一个图像尚未被选为默认基本图像

该图像缺少数据库中的实际记录..(因此很想用查询修复它,但我不会......我会继续寻找一个优雅的解决方案)

此外,函数$ product-> getMediaGalleryImages()不返回任何图像,因此我不能按照@SKV在Set Base Image上的建议使用解决方案..除非我做错了.

image magento

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

Magento定制产品属性可见性

我一直在加载我的Magento网上商店,其中包含大量具有大量自定义属性的产品,但是,后端的"可见"值设置为"否".

除了这是我的错误(以及帮助我​​填写此产品数据库的人),我似乎无法找到将属性可见性设置为是的方法.

我已经尝试在attribute_id(102)中eav_attribute查找attribute_code"可见性",并希望将其设置为另一个值catalog_product_entity_int,但随后我突然意识到"我必须至少有一个属性设置为可见,所以我必须在这个值不是4"的至少一个记录.在写了一个排除4的小查询后,我发现我根本没有记录.

我究竟做错了什么?我在这看错了桌子吗?

还有另一种方法可以将属性本身的所有"可见"属性设置为"是"吗?

php attributes visibility magento entity-attribute-value

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

使用ImageMagick将不同图像格式批量转换/调整为特定分辨率的JPEG

我如何使用mogrify批量转换大量文件(.TIF,.EPS,.JPG,但最烦人的全部).PSD文件,只保留第一层?

我找到了一个如何转换所有图像的解决方案,但我一直在输出目录中获取与原始文件不同的文件名(它们的原始文件名附加了-0,-1,-2等).

我有2个文件夹,./ original /(包含我的PSD,EPS,TIF,GIF,JPG和其他图像)+文件夹./converted/(这是我转换的目标文件夹)

我用来转换图像的命令是:

mogrify -verbose -path ./converted/ \
-alpha off -strip -mattecolor white -background white \
-resize 512x512 -format jpg -quality 75% -interlace Plane ./original/*.*
Run Code Online (Sandbox Code Playgroud)

但无论我尝试什么,我都会不断收到这些垃圾,这会破坏我的文件名.然而,有一种模式只是将文件的每个解释合并为一种模式,但由于我在透明文件上获得黑色背景,这也是无用的.

image imagemagick image-conversion batch-processing mogrify

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

创建多分辨率图标

我正在寻找一种从单个图像创建favicon.ico的方法,但是,我遇到了所有分辨率的问题.

我已经在几个论坛帖子和网站上尝试了'convert -file1- -file2- favicon.ico',但这并不是我想要的.

favicon

3
推荐指数
2
解决办法
1610
查看次数

如果我在同一个IF语句中放入一个isset(),为什么不通知PHP不存在数组索引?

情况:我们有一小段PHP代码检查变量是否具有某个值,但由于数组索引及其值尚未设置,因此会产生E_NOTICE错误:

这会触发通知

<?php

    $arr = array();

    if ($arr['name']=='john') {
        echo('This should not work');
    } else {
        echo('In your computer, ignoring your notice');
    }
Run Code Online (Sandbox Code Playgroud)

这引起了很好的注意:

PHP Notice:  Undefined index: name in /home/hvanmegen/test.php on line 5
PHP Stack trace:
PHP   1. {main}() /home/hvanmegen/test.php:0
Run Code Online (Sandbox Code Playgroud)

现在请向我解释一下,如果该值检查会抛出错误,下面打印的代码如何正常运行而不会抛出相同的异常?!?!

这不会触发通知!

<?php

    $arr = array();

    if (isset($arr['name']) && $arr['name']=='john') {
        echo('This should not work');
    } else {
        echo('In your computer, ignoring your notice');
    }
Run Code Online (Sandbox Code Playgroud)

输出:

In your computer, ignoring your notice
Run Code Online (Sandbox Code Playgroud)

一旦第一个错误被返回或者什么东西,AND检查是否被中止/抛弃?

PHP是否只是跳过第二次检查,并且只要在比较列表中触发第一次错误,就不会实际执行第二次检查?

另外,将两个if语句分开是否被认为是良好的编码实践,或者我的编码方式过于陈旧?有人会认为检查这个的正确方法是这样的:

<?php

    $arr = array(); …
Run Code Online (Sandbox Code Playgroud)

php isset short-circuiting comparison-operators

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

如何在一张图表中混合 Grafana 中的条形图和线条

如何将一个数据系列显示为条形图,将另一个数据系列显示为一个图形中的一条线,就像在最后一条评论中使用的一样:见最后一张图片

来自上面链接的问题的图表

charts grafana

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