01/10/2018, 13:32

Cách gọi hàm function trong view laravel 5.3

Hi all,

Hiện tại em muốn sử dụng cơ sở dữ liệu trong AdminController để hiển thị ra view admin.blade.php. Nhưng không hiện tại không hiểu được Admin đã khai báo trong app.php.




Leng Keng viết 15:42 ngày 01/10/2018

bạn dùng cách này coi. http://laraveldaily.com/how-to-use-external-classes-and-php-files-in-laravel-controller/

Ice Tea viết 15:36 ngày 01/10/2018

Hi bạn, ai chỉ bạn cách làm thế này? Hay bạn làm tù mù mà không hiểu gì cả?

Bạn đang khai báo class aliasAdminController nhưng trong view bạn lại dùng Admin?

Method test() không phải method static, có thể gọi bằng :: không?

muốn sử dụng cơ sở dữ liệu trong AdminController để hiển thị ra view admin.blade.php

Laravel hỗ trợ truyền data từ controller sang view, bạn đã đọc tài liệu chưa?

Quy Le viết 15:43 ngày 01/10/2018

Hi bạn,
Mình nghĩ khả năng là do AdminController của bạn chưa được nạp vào autoload,
Cái mà bạn đang define vào app.php nó chỉ là alias thôi,
Đầu tiên bạn phải khai báo để bộ autoload nó khởi tạo Object, sau đó việc khai báo ở app.php mới có ý nghĩa,
Cách fix:

  1. Bạn ở file composer.json rồi add path đến folder chứa controller của bạn,
    ví dụ: composer.json

    “autoload”: {
    “classmap”: [
    “database”
    ],
    “psr-4”: {
    “App\”: “app/”,
    “App\Http\Controllers\Backend\”: “app/Http/Controllers/Backend/”
    },
    “files”: [
    “app/Helpers/Helper.php”
    ]
    },

  2. Mở console chạy composer dump-autoload để Laravel nạp thêm toàn bộ file .php có trong thư mục Backend của bạn.

  3. Sau khi autoload chạy xong thì bạn vào file vendor\composer\autoload_psr4.php nếu thấy controller của bạn đã được nạp vào đó thì OK.
    Bạn tìm hiểu chút về autoload để hiểu thêm nhé.

Ice Tea viết 15:46 ngày 01/10/2018

Hi Quy Le,
Bạn cũng nên đọc lại về class alias và autoloading.
Lỗi rõ ràng ra đấy rồi mà cứ hướng dẫn lung tung hết cả lên.

Quy Le viết 15:46 ngày 01/10/2018

Cảm ơn bạn @it-4-life nhé, mình cũng sẽ đọc thêm về 2 thứ đó.
Trong trả lời mình cũng nói chỉ nghĩ vậy thôi, còn root cause thì có thể bạn đã nhận ra trước đó rồi nhỉ.
Welcome bạn!

Ice Tea viết 15:45 ngày 01/10/2018


Bạn đọc câu trả lời đầu của mình sẽ biết được chủ topic đang sai ở những chỗ nào.

Bonus: đã autoload namespace App vào thư mục app/ rồi thì không cần autoload namespace con vào thư mục con nữa (psr-4)

Quy Le viết 15:38 ngày 01/10/2018

@it-4-life Bạn good at laravel quá, cảm ơn bạn đã góp ý nhé. lần sau mình sẽ đọc câu trả lời ở trên trước.

MT viết 15:41 ngày 01/10/2018

Học cơ bản cho đàng hoàng cái đã. Hỏi câu gì mất căn bản quá, gặp ông khó tính chửi cho thúi đầu

Bài liên quan
0