2013-02-07 31 views
8

Tôi đang sử dụng mã vạch 2.1.3Mô hình tải mã vạch trong thư viện

Tôi đang cố tải mô hình từ thư viện. Ban đầu mã của tôi trong xây dựng trong thư viện trông như thế này

$this->CI=& get_instance(); $this->CI->load->database('default') 

Sau đó, trong một trong những phương pháp thư viện của tôi

khi tôi thử các dòng bên dưới nó không làm việc

$this->load->model('model_name') 

nhưng khi tôi đã cố gắng này

$this->CI->load->model('model_name','',TRUE) 

hoạt động, bất kỳ ai cũng có thể giải thích trường hợp CI là gì nd 2 tham số bổ sung khi tải mô hình? Cảm ơn trước.

Trả lời

2

Bạn có thể nói với các chức năng mô hình nạp để tự động kết nối bằng cách thông qua TRUE (boolean) thông qua các tham số thứ ba, và các thiết lập kết nối, như đã xác định trong tập tin cấu hình cơ sở dữ liệu của bạn sẽ được sử dụng:

$this->load->model('Model_name', '', TRUE); 

Bạn có thể thêm về điều này ở cuối trang của liên kết dưới đây.

http://ellislab.com/codeigniter/user-guide/general/models.html

22

Một thư viện không nhất thiết phải là một phần của con đường CodeIgniter hoạt động.

Nó có thể là một thư viện tự chế, để giải quyết một công việc mà bạn muốn thực hiện trong ứng dụng CI của bạn.

Điều này có nghĩa là nếu bạn muốn sử dụng bất kỳ trình trợ giúp, mô hình hoặc thư viện nào của CI, bạn cần thực hiện điều này thông qua cá thể CI. Điều này đạt được bằng cách làm này:

public function __construct() 
{ 
    $this->CI =& get_instance(); 
} 

Bằng cách chỉ định các trường hợp thành viên librarys của bạn tên là CI, tất cả những người giúp đỡ, mô hình và các thư viện CI liên quan có thể được nạp thông qua $this->CI. Bằng cách cố gắng làm điều đó chỉ với $this bạn chỉ đề cập đến thư viện hiện tại - không phải là cá thể CI.

Để tải mô hình của bạn một cách chính xác, trong thư viện của bạn, $this->CI->load->model('model_name'); là đủ. Tham số thứ hai cho phép bạn truy cập mô hình của mình thông qua một tên đối tượng khác. Tham số thứ ba là không cần thiết để tải các mô hình, nhưng cho phép bạn tự động tải trình điều khiển cơ sở dữ liệu.

Nếu bạn muốn truy cập mô hình của bạn thông qua cùng một thành viên:

$respone = $this->CI->model_name->method(); 
Các vấn đề liên quan