我有一个模型将一条记录传递给我的控制器,但我一直收到这两个错误
消息:Quoted_model :: get_records()缺少参数1,调用 /home/digibite/public_html/development/quote/application/controllers/welcome.php 在第12行并定义
消息:缺少Quotes_model :: get_records()的参数2,调用 /home/digibite/public_html/development/quote/application/controllers/welcome.php 在第12行并定义
我一直在玩这个差不多一个小时,无法理解它。
我的模特
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Quotes_model extends CI_Model{
function __construct(){
parent::__construct();
}
function get_records($limit, $offset){
$query = $this->db->select('*')
->from('quotes')
->join('authors', 'authors.id = quotes.author_id')
->join('genre', 'genre.id = quotes.id')
->order_by('id', 'RANDOM')
->limit($limit, $offset);
$data = array();
$data[] = array (
'title' => $row->title,
'slug' => $row->slug,
'meta_keys' => $row->meta_keys,
'meta_description' => $row->meta_description,
'content' => $row->content,
'views' => $row->views,
);
return $data;
}
}
这是我的控制器
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {
public function index()
{
$this->load->helper('url');
$this->load->model('quotes_model');
$data['quote']= $this->quotes_model->get_records();
$this->load->view('welcome_message');
}
}
答案 0 :(得分:0)
此错误是因为您没有通过控制器中的函数传递任何参数。
$data['quote']= $this->quotes_model->get_records();
^
并且您试图在查询中调用参数(您应该传递给模型)。
$query = $this->db->select('*')
->from('quotes')
->join('authors', 'authors.id = quotes.author_id')
->join('genre', 'genre.id = quotes.id')
->order_by('id', 'RANDOM')
->limit($limit, $offset);
^ ^