我遇到了一个非常奇怪的错误,我似乎无法解决。 我想要上传/查看/删除图像的管理区域中的任何位置都没有显示。
我的'inspect element'控制台给了我这个错误:
Uncaught ReferenceError: id_23b2a41c446dee70b327b51065e06137_UploaderJsObject is not defined
我将其跟踪到具有以下代码的gallery.phtml文件:
<script type="text/javascript">
//<![CDATA[
var <?php echo $_block->getJsObjectName(); ?> = new Product.Gallery('<?php echo $_block->getHtmlId() ?>', <?php if ($_block->getElement()->getReadonly()):?>null<?php else:?><?php echo $_block->getUploader()->getJsObjectName() ?><?php endif;?>, <?php echo $_block->getImageTypesJson() ?>);
//]]>
</script>
我完全不知道这里出了什么问题。我没有任何核心文件的混乱。 我也没有改变任何javascript的东西。
我希望有人可以帮我找出问题所在。自昨天以来一直坚持这个错误..
感谢任何帮助:)
答案 0 :(得分:36)
最近克隆了一个repo或试图设置另一个magento环境并看到这个错误?检查以下文件是否位于由于是二进制文件(swf flash文件)而被版本控制软件忽略而可能留下的适当位置:
/skin/adminhtml/default/default/media/uploader.swf
/skin/adminhtml/default/default/media/uploaderSingle.swf
/skin/adminhtml/default/default/media/editor.swf
/skin/adminhtml/default/default/media/flex.swf
并且为了衡量这些文件:
/app/design/adminhtml/default/default/template/media/uploader.phtml
/app/design/adminhtml/default/default/template/media/editor.phtml
下面有人提到magento 1.9:
/skin/adminhtml/default/default/media/editor.swf
不存在,所以不要担心该文件。
答案 1 :(得分:5)
我遇到了同样的问题。
在我的php.ini中,max_post被设置为0,应该禁用它,但这会破坏JS Uploader,因为它会查询php的最大上传大小。
我只需将其设置为100M,即可显示浏览和上传按钮。
答案 2 :(得分:1)
就我而言,从Dull_Uploader.xml
删除文件/app/etc/modules
解决了这个特定问题。
答案 3 :(得分:0)
哦,哇我的同事们在发布这个问题后发现了一秒钟。
如果其他人有这个问题。
皮肤文件夹中的某些文件丢失了。
希望有人会发现此信息有用。
答案 4 :(得分:0)
我检查了此页面中给出的所有内容,所有文件都在正确的位置。进一步的调查把我带到了page。
然后我意识到我在firefox中,这可能就是原因。
安装flash播放器后,一切正常。
希望这会对某人有所帮助。
更新-1(如果参考链接更改):
Check for the flash player
http://helpx.adobe.com/flash-player.html
Your magento root directory should not be password protected using .htpasswd file.
Please post if you are getting any error.
答案 5 :(得分:0)
答案是@ danny-z似乎已经成功了。
我还要补充一点,所有这些文件的权限都应该设置为0644.所以只需cd
进入每个目录,然后使用ls -l
检查当前权限。它们应显示为-rw-r--r--
。如果他们不这样做chmod 0644 *
(确保你在运行它时在目录中,所以它只影响那些文件),然后再次检查它们以确保它有效。
此外,@ KPheasey在.gitignore
排除所有media
的评论中提及上述内容。我理解这意味着在将网站部署到服务器时,由于media
而排除了所有.gitignore
,但在media
本地.gitignore
不会阻止这些文件工作本地。只是想澄清一下,因为我最初对这个评论感到有些困惑。
我丢失文件的原因是因为我做了tar
现有网站(在本地计算机上设置)并排除了media
,因此我没有收到大量文件。我的意思是排除主media
文件夹,但错误地将这些文件夹排除在外(或许我猜的其他文件)。
答案 6 :(得分:0)
最后我通过在我的ubuntu 16.04上安装flash解决了问题:
sudo apt install adobe-flashplugin