Can someone tell me how to make a join within magento
Here is the problem:
<?//kleurtjes
$collection= Mage::getModel('faq/faq')->getCollection();
$collection->getSelect()->join(array('faqcat' => $this->getTable('faqcat/faqcat')), 'faqcat.faqcat_id=faq.faqcat_id' , array('faqcat.*'));
?>
Run Code Online (Sandbox Code Playgroud)
i am trying to make a join with the table faqcat where i use the key faqcat_id .
futher i want that faqcat.name + faq.faq_id are being selected cos these are the values i want to use in colums.
<?
protected function _prepareColumns()
{
$this->addColumn('faq_id', array(
'header' => Mage::helper('faq')->__('ID'),
'align' =>'right',
'width' => '50px',
'index' …Run Code Online (Sandbox Code Playgroud) 想知道是否有人在magento的布局XML中使用或语句用于自定义模块?我意识到我可以检查模块控制器中的值或块本身,但它似乎是逻辑生存的逻辑位置.
Mage_Core使用它们catalog.xml来测试javascript.<!--<params/><if/><condition>can_load_calendar_js</condition>-->
谢谢,JD
我有一个工作正常的自定义模块,但我希望能够在配置中存储变量,以便我可以在我的代码中使用它们.(例如,默认错误消息)
我想我可以使用Mage :: getStoreConfig('/ some/path/here')访问它们; 但我不知道如何将它们添加到模块config.xml(myname/mymodule/etc/config.xml),以便我可以在我的代码中使用它们?
有人有线索吗?谢谢!
我正在制作一个自定义的Magento(1.3)主题,我想添加一个左列.
我用html创建了template/page/html/left.phtml.
在2columns-left.phtml中,我添加了以下内容:
<?php echo $this->getChildHtml('left'); ?>
Run Code Online (Sandbox Code Playgroud)
在page.xml中,我添加了以下内容:
<block type="page/html" name="left" as="left" template="page/html/left.phtml" />
Run Code Online (Sandbox Code Playgroud)
我不太了解的是块类型应该是什么 - 如果我执行page/html,core/template或page/html_header似乎有效 - 这是什么以及这个案例的正确值是什么,我在哪里只想有效地包含一个phtml文件 - page/html/left.phtml等.
谢谢,
伊恩
在Magento Layout系统的深处,有以下代码用于将包布局xml文件转换为创建块所需的特定XML,从而创建页面
public function merge($handle)
{
$packageUpdatesStatus = $this->fetchPackageLayoutUpdates($handle);
if (Mage::app()->isInstalled()) {
$this->fetchDbLayoutUpdates($handle);
}
}
Run Code Online (Sandbox Code Playgroud)
第二种方法fetchDbLayoutUpdates尝试使用SQL查询从数据库加载其他XML更新
SELECT `update`.`xml` FROM `core_layout_update` AS `update`
INNER JOIN `core_layout_link` AS `link`
ON link.layout_update_id=update.layout_update_id
WHERE (link.store_id IN (0, '1'))
AND (link.area='frontend')
AND (link.package='default')
AND (link.theme='default')
AND (update.handle = 'default')
ORDER BY `update`.`sort_order` ASC'
Run Code Online (Sandbox Code Playgroud)
在默认安装中,core_layout_update和core_layout_link表都是空的.
所以,我一直认为这是一个早在Magento之前的遗留功能.有谁知道这个功能是否在任何地方使用
Magento核心代码库
任何众所周知/突出的扩展
您!
我可以看到为什么这个功能已经存在(遗留问题和什么不是),但是我很好奇它是否被正式放弃了,或者它是否被大量利用了.
提前道歉是我在滥用术语,并且对修改表示赞赏.我对有向图很着迷,但我从来没有数学/ cs背景来了解它们的真正含义,我只是喜欢技术,因为它制作了有用的图表.
我正在尝试创建一个Web应用程序功能,该功能将向浏览器呈现动态有向图.我最近发现了Canviz,这是一个基于cavas的xdot渲染器,我想使用它.
Canviz很棒,但它渲染xdot文件(显示?)包含所有复杂的定位逻辑
/* example xdot file */
digraph abstract {
graph [size="6,6"];
node [label="\N"];
graph [bb="0,0,1250,612",
_draw_="c 9 -#ffffffff C 9 -#ffffffff P 4 0 -1 0 612 1251 612 1251 -1 ",
xdotversion="1.2"];
S1 [pos="464,594", width="0.75", height="0.5", _draw_="c 9 -#000000ff e 464 594 27 18 ", _ldraw_="F 14.000000 11 -Times-Roman c 9 -#000000ff T 464 588 0 15 2 -S1 "];
10 [pos="409,522", width="0.75", height="0.5", _draw_="c 9 -#000000ff e 409 522 …Run Code Online (Sandbox Code Playgroud) 什么将 Drupal Hook 与特定模块联系起来?
在 Drupal 7 中,每个核心模块都有一个“api”文件
$ ls modules/*/*.api.php
modules/aggregator/aggregator.api.php modules/openid/openid.api.php
modules/block/block.api.php modules/overlay/overlay.api.php
modules/comment/comment.api.php modules/path/path.api.php
modules/contextual/contextual.api.php modules/rdf/rdf.api.php
modules/dashboard/dashboard.api.php modules/search/search.api.php
modules/field/field.api.php modules/shortcut/shortcut.api.php
modules/field_ui/field_ui.api.php modules/simpletest/simpletest.api.php
modules/file/file.api.php modules/system/system.api.php
modules/filter/filter.api.php modules/system/theme.api.php
modules/help/help.api.php modules/taxonomy/taxonomy.api.php
modules/image/image.api.php modules/trigger/trigger.api.php
modules/locale/locale.api.php modules/update/update.api.php
modules/menu/menu.api.php modules/user/user.api.php
modules/node/node.api.php
Run Code Online (Sandbox Code Playgroud)
这些文件中的每一个都包含一个从不 (?) 调用的函数,但记录了其他模块(包括第 3 方)可以实现的钩子的存在。
File: modules/path/path.api.php
function hook_path_delete($path) {
db_delete('mytable')
->condition('pid', $path['pid'])
->execute();
}
Run Code Online (Sandbox Code Playgroud)
我的问题:是什么将特定钩子与特定模块联系起来?为什么path_delete钩子包含在path.api.php文件中?为什么entity_view钩子包含在system.api.php文件中?这只是任意的,事后组织,还是 Drupal 系统中是否有将特定钩子与特定模块联系起来的东西?或者是其他东西?
有没有办法在开发新模块时以"非缓存"模式运行Drupal 7?我的具体需求是在开发过程中关闭任何模块和/或模块信息的缓存,所以我不需要在进行更改时清除缓存,但通常在学习新系统时我更喜欢它的内部缓存,因为我尚未了解哪些更改需要缓存清除,哪些不需要(即"我这样做错了,还是旧的结果只是缓存?"
还有一种方法可以从命令行快速清除Drupal缓存(而不必在性能部分使用应用程序UI)
我正在使用extractToPHP PharData类的方法来检查phar文件的内容并运行一些strage结果.我已经达到了我的字节级侦探工作的极限,并希望有人能够帮助我解决这个问题.
详细信息如下,但一般来说:当我提取我的存档文件时PharData::extractTo,我得到的文件显示为varient bzip,但bzip2命令不喜欢它们.这是正常的phar行为,还是特定档案的问题?(或者我正在使用的PHP/OS组合).有没有办法从phar存档中获取纯文本文件 - 或者纯文本应该是默认文件,而我正在查看奇怪的系统行为?
具体来说,当我运行命令时
$phar = new Phar('n98-magerun.phar');
$phar->extractTo('/tmp/n98-magerun');
Run Code Online (Sandbox Code Playgroud)
在我的OS 10.6.8,基于Intel的Mac上使用内置的PHP 5.3.6,存档被成功提取到/ tmp/n98-magerun文件夹中.

我正在提取的档案可以在这里找到.
如果我打开在BBEdit中提取的任何文本文件,我会看到正确的内容.

但是,如果我使用其他工具,例如quicklook vi,或者cat,我会看到二进制数据.我在尝试ack/ grep浏览文件内容时注意到了这一点,但我没有得到我预期的结果.

如果我file在文件上使用该命令,则报告它是一个bzip文件.
$ file MIT-LICENSE.txt
MIT-LICENSE.txt: bzip2 compressed data, block size = 400k
Run Code Online (Sandbox Code Playgroud)
并使用十六进制编辑器检查文件,确认文件以BZ标题开头

但是,尝试解压缩文件会bzip2导致以下错误
$ bzip2 -d MIT-LICENSE.txt
bzip2: Can't guess original name for MIT-LICENSE.txt -- using MIT-LICENSE.txt.out
bzip2: Compressed file ends …Run Code Online (Sandbox Code Playgroud) 在PHP中,我可以使用以下代码从命令行程序读取输入
$stream = STDIN;
$test = fgets($stream);
echo $test;
Run Code Online (Sandbox Code Playgroud)
这适用于简单的输入.但是,如果我尝试使用类似后箭头键的东西,我的shell看起来如下所示
This is a test^[[D^[[D^[[D
Run Code Online (Sandbox Code Playgroud)
即,箭头键转义序列^[[D被发送到shell.PHP本身将解释箭头键 - 即输入它
This is a test^[[D^[[D^[[D^[[Dsecond test
Run Code Online (Sandbox Code Playgroud)
会输出这个
This is a second test
Run Code Online (Sandbox Code Playgroud)
但是,我希望shell"正确"(即做我认为他们应该做的事情,而不是我发送的字面)解释箭头键,以便插入点在输入时移动.
这可能在PHP?有扩展吗?没有延期?我尝试了各种变体,fgets($stream, 1)但似乎PHP只是挂起,直到用户输入一个回车键.