窓から飛び降りる前に、誰かがこれを手伝ってくれることを願っています。私はこれに数時間を費やしましたが、何が間違っているのかわかりません。
基本的に、CodeIgniter 2.1.2 に HMVC をインストールしましたが、すべて正常に動作しますが、何らかの理由で、標準コントローラーで行っているのと同じ方法でモデルをロードできません。古い codeigniter 1.7.1 では、 $this->load->model('my_model') を呼び出すだけで使用できましたが、今はできません?!
モデルをロードしようとするたびに、次のエラーが発生します。
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Special_cart::$db
Filename: core/Model.php
Line Number: 51
手順に従って、段階的にインストールしました。modules フォルダーの横に third_party があります。モジュールには、次のように保存されたモジュールはほとんどありません。
modules
--boxes
----controller
----models
----views
次のようにコードでモジュールを呼び出します。
<?=modules::run('boxes/special_cart/index');?>
私のモジュールコントローラーコードは次のようになります。
class Special_cart extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function index()
{
if ($this->session->userdata('cart'))
{
# get product id's and each quantity
$cart_product_list = array_count_values($this->session->userdata('cart'));
# get list of product_id
$product_list = array_keys($cart_product_list);
# get product details
$this->load->model('productmodel');
$this->load->model('stockmodel');
$cart_products = $this->productmodel->cart_get_products_details($product_list);
$final_cart_array = array();
foreach($cart_products as $cart_product){
$product_stock = $this->stockmodel->view_product_stock($cart_product["id"]);
if(empty($product_stock) || $product_stock["UNITS"]<=0)
$cart_product["UNITS"] = 0;
else{
if($cart_product_list[$cart_product["id_web"]]>$product_stock["UNITS"])
$cart_product["UNITS"] = $product_stock["UNITS"];
else{
$cart_product["UNITS"] = $cart_product_list[$cart_product["id_web"]];
}
}
$final_cart_array[] = $cart_product;
}
$refresh_cart_array = array();
foreach($final_cart_array as $cart_product){
for($i=1;$i<=$cart_product["UNITS"];$i++){
$refresh_cart_array[] = $cart_product["id_web"];
}
}
$this->load->view("special_cart",array(
'refresh_cart_array' => $refresh_cart_array,
'final_cart_array' => $final_cart_array
));
} else {
$this->load->view("special_cart",array(
'refresh_cart_array' => NULL,
'final_cart_array' => NULL
));
}
}
}
インターネットで見つけたすべての可能な解決策を試しましたが、どれも機能しません....私の問題を理解していただければ幸いですが、さらに説明が必要な場合は私に尋ねてください。誰でも助けることができますか?