分类 Code 下的文章

svn更新是遇到的版本冲突,这是冲突时可供选择的参数说明,记录一下。
(p) postpone - mark the conflict to be resolved later //让文件在更新完成之后保持冲突状态。
(df) diff-full - show all changes made to merged file //使用标准区别格式显示base修订版本和冲突文件本身的区别。
(e) edit - change merged file in an editor //用你喜欢的编辑器打开冲突的文件,编辑器是环境变量EDITOR设置的。
(r) resolved - accept merged version of file //完成文件编辑之后,通知svn你已经解决了文件的冲突,它必须接受当前的内容—从本质上讲就是你已经“解决了”冲突。
(mf) mine-full - accept my version of entire file (ignore their change//丢弃新从服务器接收的变更,并只使用你查看文件的本地修改。
(tf) theirs-full - accept their version of entire file (lose my changes)//丢弃你对查看文件的本地修改,只使用从服务器新接收的变更。
(l) launch - launch external tool to resolve conflict//启动一个外置程序来执行冲突解决,这需要一些预先的准备。
(h) help - show this list //显示所有在冲突解决时可能使用的命令。

public function deleteallAction()
{
    $cartHelper = Mage::helper('checkout/cart');
    $items = $cartHelper->getCart()->getItems();        
    foreach ($items as $item) 
    {
        $itemId = $item->getItemId();
        $cartHelper->getCart()->removeItem($itemId)->save();
    } 
    $this->_redirectReferer(Mage::getUrl('*/*'));
}
$cartHelper = Mage::helper('checkout/cart');
$items = $cartHelper->getCart()->getItems();
foreach ($items as $item) {
    if ($item->getProduct()->getId() == $productId) {
        $itemId = $item->getItemId();
        $cartHelper->getCart()->removeItem($itemId)->save();
        break;
    }
}

今天安装一个模版,装上之后更新索引,出现“Invalid backend model specified: catalog/product_attribute_backend_startdate_specialprice”的错误,看字面意思是引用了无效的后端模块,查找这个模块,确实没有。网上搜了一圈,找到篇文章,说的大体是这意思,附上文章:

当你开始用Magento1.5,你就不能指望Magento能让你不头疼的去工作,今天就出事了。

我们开始处理一个网站从来没有遇到过的可能会毁掉整个网站的问题。这是给所谓的错误“Invalid backend model specified: catalog/attribute_backend_customlayoutupdate
这是问题的解决办法,
1.转到你的phpmyadmin,比如你的数据库名是XXX。
2.运行下面的语句
SELECT *
FROM `qubesys`.`eav_attribute`
WHERE (
`attribute_id` LIKE '%stomlayoutupdate%'
OR `entity_type_id` LIKE '%stomlayoutupdate%'
OR `attribute_code` LIKE '%stomlayoutupdate%'
OR `attribute_model` LIKE '%stomlayoutupdate%'
OR `backend_model` LIKE '%stomlayoutupdate%'
OR `backend_type` LIKE '%stomlayoutupdate%'
OR `backend_table` LIKE '%stomlayoutupdate%'
OR `frontend_model` LIKE '%stomlayoutupdate%'
OR `frontend_input` LIKE '%stomlayoutupdate%'
OR `frontend_label` LIKE '%stomlayoutupdate%'
OR `frontend_class` LIKE '%stomlayoutupdate%'
OR `source_model` LIKE '%stomlayoutupdate%'
OR `is_required` LIKE '%stomlayoutupdate%'
OR `is_user_defined` LIKE '%stomlayoutupdate%'
OR `default_value` LIKE '%stomlayoutupdate%'
OR `is_unique` LIKE '%stomlayoutupdate%'
OR `note` LIKE '%stomlayoutupdate%'
)

3.当你运行后,数据库会显示一些记录,选中,并删除

4.删除后,刷新一下网站前端,你的网站又回来了。

(上面是文章的原文,=_=!当年不好好学习,英语还是初中水平,大家凑合着看看吧。)

最关键的还是下面的一些回复,下面很多人问跟我的一样的问题,有个回复帮我解决了问题:大体意思是用上面的方法把记录找出来,select关键字是“special_price”,在记录里把“catalog/product_attribute_backend_startdate_specialprice”里的specialprice删掉(实际代码中确实也没有这个模块),之后刷新页面,问题解决了。

附上原来的地址,我描述不清楚的,请移步原文:http://www.learnmagento.org/magento-bug-fixes/invalid-backend-model-specified/

今天早上同事跟我说我写的接口出问题了,上去一看,报SQLSTATE[HY000]: General error: 1030 Got error 28 from storage engine错误,照例百度,原来是服务器的临时空间不足导致。
解决办法:1.清空/tmp目录
2.修改my.cnf中的tmpdir参数,指向具有足够空间目录

主要用处就是在Magento中获取指定分类下的产品。

$products = Mage::getModel('catalog/category')->load($category_id)
->getProductCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('status', 1)
->addAttributeToFilter('visibility', 4);