2014-10-14 15 views
5

Tôi muốn sử dụng lớp DB để giao dịch với IoC Container.Làm thế nào để tiêm cơ sở dữ liệu vào hàm tạo với Laravel IoC

use Illuminate\Database\Connection as DB; 
public function __construct(DB $db) 
{ 
    $this->db = $db; 
} 

Nhưng khi sử dụng lớp db, tôi gặp lỗi.

Unresolvable dependency resolving [Parameter #0 [ <required> $dsn ]] in class PDO 

Tôi biết, phải ràng buộc điều gì đó nhưng tôi không biết gì?

Trả lời

7

Bạn cần thay đổi

use Illuminate\Database\Connection as DB; 

vào

use Illuminate\Database\DatabaseManager as DB; 

tôi nghĩ bạn có thể sử dụng DB mặt tiền ở đây nhưng trong thực tế, bạn không thể. Bạn cần phải vượt qua một cách rõ ràng lớp học phía sau mặt tiền nhìn vào http://laravel.com/docs/4.2/facades#facade-class-reference

+0

Tôi không thể sử dụng Mặt tiền vì trả lại lỗi này: '' 'Gọi để xác định phương pháp Illuminate \ Support \ Facades \ DB :: beginTransaction()' '' – armani

+0

@armani Tôi đã cập nhật câu trả lời của mình –

+0

cảm ơn, greate. – armani

Các vấn đề liên quan