Magento没有通过模型更新记录

时间:2013-11-21 17:32:16

标签: magento model-view-controller

有没有人知道为什么这段代码不会更新我的数据库中的order_id列? 是因为我们处于模型背景中吗?因为类似的代码在控制器上下文中起作用。

如果我转储$ order变量,我可以看到它已经更新了对象的order_id值,但是它没有保存到数据库中。

这些是表planner_orders中的字段:

id  int
order_id    bigint
visitor_id  bigint
store_id    int
repair_customers_id int
start_timeslot  timestamp
timeslots   int
location    varchar
vat double
total_vat   double
created timestamp

<?php
class Alphabase_Planner_Model_Order extends Mage_Core_Model_Abstract
{
    public function _construct()
    {
        parent::_construct();
        $this->_init('planner/order');
    }

    public function create($visitor, $store, $customer, $start, $timeslots = 0, $location, $vat, $total_vat) {
        $order = Mage::getModel('planner/order')
            ->setData('visitor_id', $visitor)
            ->setData('store_id', $store)
            ->setData('repair_customers_id', $customer)
            ->setData('start_timeslot', $start)
            ->setData('timeslots', $timeslots)
            ->setData('location', $location)
            ->setData('vat', $vat)
            ->setData('total_vat', $total_vat)
            ->setData('created', now())
            ->save();
        $id = $order->id;
        $order_id = $store.sprintf('%08d', $id);
        $order->setOrderId($order_id);
        $order->save();
        return $order;
    }

}

0 个答案:

没有答案