Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng chức năng trợ giúp tùy chỉnh trong Laravel. Hàm trợ giúp là một hàm tùy chỉnh mà bạn tạo để giúp cuộc sống của bạn dễ dàng hơn. Bạn có thể sử dụng hàm trợ giúp để thực hiện các tác vụ phổ biến trong ứng dụng của mình hoặc để thực hiện các tác vụ cụ thể dễ dàng hơn
Khi bạn tạo một hàm trợ giúp, bạn đặt cho nó một cái tên và chữ ký của hàm. Chữ ký hàm là một tập hợp các yêu cầu mà hàm của bạn phải đáp ứng. Tên này là tùy chọn, nhưng sẽ hữu ích khi bạn muốn nhớ chức năng đó làm gì
Để sử dụng hàm trợ giúp trong ứng dụng của bạn, trước tiên bạn cần đưa hàm trợ giúp vào không gian tên của ứng dụng. Để làm điều này, bạn có thể sử dụng chức năng bao gồm. Hàm bao gồm có hai đối số. tên của tệp bạn muốn đưa vào và đường dẫn đến tệp
Tiếp theo, bạn cần đưa chức năng vào mã ứng dụng của mình. Để làm điều này, bạn có thể sử dụng chức năng sử dụng. Hàm sử dụng có hai đối số. tên của hàm và đường dẫn đến hàm
Cuối cùng, bạn cần gọi hàm. Để làm điều này, bạn có thể sử dụng chức năng gọi. Hàm gọi có hai đối số. tên của hàm và các đối số mà hàm mong đợi
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng chức năng trợ giúp tùy chỉnh để tạo tài khoản người dùng mới trong ứng dụng Laravel của bạn. Chức năng trợ giúp tài khoản người dùng sẽ nhập tên người dùng và mật khẩu, đồng thời sẽ tạo tài khoản người dùng mới cho người dùng trong cơ sở dữ liệu
Để sử dụng chức năng trợ giúp tài khoản người dùng, trước tiên hãy đưa chức năng trợ giúp tài khoản người dùng vào không gian tên của ứng dụng của bạn. Để làm điều này, bạn có thể sử dụng chức năng bao gồm. Hàm bao gồm có hai đối số. tên của tệp bạn muốn đưa vào và đường dẫn đến tệp
Tiếp theo, bạn cần đưa chức năng trợ giúp tài khoản người dùng vào mã ứng dụng của mình. Để làm điều này, bạn có thể sử dụng chức năng sử dụng. Hàm sử dụng có hai đối số. tên của hàm và đường dẫn đến hàm
Cuối cùng, bạn cần gọi chức năng trợ giúp tài khoản người dùng. Để làm điều này, bạn có thể sử dụng chức năng gọi. Hàm gọi có hai đối số. tên của hàm và các đối số mà hàm mong đợi
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng chức năng trợ giúp tùy chỉnh để tạo tài khoản người dùng mới trong ứng dụng Laravel của bạn. Chức năng trợ giúp tài khoản người dùng sẽ nhập tên người dùng và mật khẩu Gói này tạo các tệp trợ giúp cho phép IDE của bạn cung cấp tính năng tự động hoàn thành chính xác. Bởi vì việc tạo dựa trên các tệp trong dự án của bạn nên nó luôn được cập nhật Nó tương thích với Laravel 8 và PHP 7. 3+ Cài đặtSử dụng lệnh sau để yêu cầu gói này với nhà soạn nhạc composer require --dev barryvdh/laravel-ide-helper Gói này sử dụng cơ chế tự động khám phá gói của Laravels, có nghĩa là nó sẽ không được tải nếu các phần phụ thuộc của nhà phát triển không được cài đặt trong sản xuất Nếu bạn cần kiểm soát điều này theo cách thủ công vì bất kỳ lý do gì, - Trong
public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 2, thêm gói vào khóa public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 1, e. g"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} - Trong
public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 4, thêm lớp sau vào mảng public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 3Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, Nếu bạn chỉ muốn tải nó theo cách thủ công trong môi trường phi sản xuất, bạn có thể sử dụng phương pháp public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 6 để thêm nó vào public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 5 của mìnhpublic function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
}
Ghi chú. Nên tránh lưu cấu hình vào bộ nhớ đệm trong môi trường phát triển của bạn vì nó có thể gây ra sự cố sau khi cài đặt gói này;
Cách sử dụngHãy xem video Laracasts này để biết tổng quan/giải thích public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 8 -public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 9 -public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 30 -
Ghi chú. Sublime Text yêu cầu CodeComplice. https. //github. com/spectacles/CodeComplice Tạo PHPDoc cho Laravel Facades được tự động hóaBây giờ bạn có thể tự tạo tài liệu (để cập nhật trong tương lai) public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 3Ghi chú. Bởi vì public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 31 phải được xóa trước, hãy chạy public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 32 trước khi tạoThao tác này sẽ tạo tệp public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 33, tệp này dự kiến sẽ được IDE của bạn phân tích cú pháp thêm để tự động hoàn tất. Bạn có thể thay đổi tên của nó bằng cách sử dụng cấu hình public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 34Bạn có thể đặt public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 2 của mình để thực hiện việc này mỗi khi phần phụ thuộc của bạn được cập nhậtpublic function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 0Bạn cũng có thể xuất bản tệp cấu hình để thay đổi cách triển khai (e. g. giao diện cho một lớp cụ thể) hoặc đặt giá trị mặc định của public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 36public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 2Trình tạo cố gắng xác định đúng lớp, nhưng nếu không tìm thấy nó, bạn có thể xác định nó trong tệp cấu hình Một số lớp yêu cầu kết nối cơ sở dữ liệu chức năng. Một số mặt tiền sẽ bị loại trừ nếu bạn không có kết nối làm việc mặc định. Bằng cách bao gồm tùy chọn public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 37, bạn có thể sử dụng trình điều khiển SQLite trong bộ nhớBạn có tùy chọn bao gồm các tệp trợ giúp. Tính năng này không được bật theo mặc định nhưng có thể tắt bằng tùy chọn public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 38. public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 39 đã được định cấu hình, nhưng bạn có thể thêm/xóa tệp khỏi tệp cấu hìnhQuá trình tạo PHPDoc cho macro và mixin được tự động hóaGói này có thể tạo PHPDocs cho macro và mixin và thêm chúng vào tệp public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 33Tuy nhiên, điều này chỉ hoạt động nếu gợi ý kiểu được sử dụng khi khai báo macro public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 7PHPDocs tự động cho các mô hìnhBạn có thể sử dụng lệnh public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 9 để tạo PHPDocs dựa trên các cột của bảng, quan hệ và getters/setters nếu bạn không muốn viết các thuộc tính của riêng mìnhGhi chú. Để kiểm tra bảng của từng mô hình, lệnh này yêu cầu kết nối cơ sở dữ liệu đang hoạt động
Theo mặc định, bạn được nhắc ghi đè hoặc ghi vào một tệp riêng biệt ( public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 02). Bạn có thể viết nhận xét trực tiếp vào tệp Mô hình của mình bằng tùy chọn public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 03 hoặc buộc không ghi nhận xét bằng tùy chọn public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 04Ngoài ra, việc sử dụng public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 05 sẽ chỉ thêm thẻ mixin vào tệp Mô hình của bạn, phần còn lại được viết bằng (public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 02). Tên lớp sẽ khác với tên mô hình, tránh sự phiền phức của các bản sao IDEVui lòng sao lưu các mô hình của bạn trước khi nhập thông tin
Khi chỉnh sửa các mô hình, hãy giữ nguyên các nhận xét hiện có và chỉ thêm các thuộc tính/phương thức mới. Nếu không tìm thấy PHPDoc hiện tại, nó sẽ được thay thế hoặc thêm vào. Các PHPDocs hiện có bị bỏ qua khi sử dụng tùy chọn public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 07 và chỉ các cột/quan hệ mới được phát hiện mới được lưu dưới dạng PHPDocs"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 5"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 6Với tùy chọn public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 05"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 0Thư mục mẫuCác mô hình trong public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 09 được quét theo mặc định. Đối số tùy chọn chỉ định mô hình nào sẽ sử dụng (cũng nằm ngoài ứng dụng/mô hình)"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 1Bạn cũng có thể quét một thư mục khác bằng cách chỉ định public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 20 (so với đường dẫn cơ sở)"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 2Bạn có thể đặt tệp cấu hình ( public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 21) ở chế độ công khai và đặt các thư mục mặc địnhBỏ qua các mô hìnhCó thể bỏ qua các mô hình bằng cách chọn public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 22"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 3Ngoài ra, có thể bỏ qua cấu hình public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 23"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 4Phép thuật public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 24 phương phápEloquent cho phép bạn gọi public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 25 trên các mô hình của bạn, e. g. g. public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 26 và tự động chuyển đổi thành e. g. public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 27Nếu bạn không muốn chúng được tạo (một cho mỗi cột), bạn có thể tắt nó bằng cách chỉnh sửa cấu hình public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 28 và thay đổi nó thành public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 29Thuộc tính ma thuật public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 70Bạn có thể sử dụng phương pháp để đếm số lượng kết quả mối quan hệ mà không thực sự tải chúng. Những kết quả này sau đó được gán cho các thuộc tính theo quy ước public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 72Các thuộc tính này được tạo theo mặc định trong phpdoc. Bạn có thể tắt chúng bằng cách thay đổi cấu hình public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 73 thành public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 29Hỗ trợ public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 75 dựa trên DocBlockQuan hệ và getters/setters cũng có thể thêm nhận xét vào thuộc tính như cột bảng để hỗ trợ IDE tốt hơn. Do đó, một khối tài liệu tùy chỉnh public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 75 được sử dụng"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 5Các phương thức Eloquent Builder chuyên dụngCác mô hình Eloquent hiện có một phương thức mới gọi là Tham chiếu public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 77, cho phép chúng tôi thêm hỗ trợ để tạo một lớp chuyên dụng mới thay vì sử dụng các phạm vi cục bộ trong chính mô hình đóNếu bạn không muốn chúng được tạo (một cho mỗi cột), bạn có thể tắt chúng bằng cách chỉnh sửa cấu hình public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 78 và thay đổi giá trị thành public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 29Các loại cơ sở dữ liệu tùy chỉnh hoặc không được hỗ trợCác loại cột phổ biến (e. g. Các loại PHP (varchar, số nguyên) được ánh xạ chính xác ( "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 50, "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 51)Tuy nhiên, bạn có thể muốn sử dụng các loại cột tùy chỉnh trong cơ sở dữ liệu của mình, chẳng hạn như "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 52, "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 53, "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 54, "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 55, v.v. có thể dẫn đến "Loại cơ sở dữ liệu không xác định" -ExceptionBạn có thể ánh xạ những trường hợp đặc biệt đó bằng cách sử dụng cấu hình "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 56. Ví dụ"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 6Các loại mối quan hệ tùy chỉnhNếu bạn đang sử dụng các mối quan hệ không được tích hợp sẵn trong Laravel, bạn phải chỉ định tên và lớp trả về trong cấu hình để đảm bảo tạo đúng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 7Các mối quan hệ được tìm thấy thường sẽ tạo ra một giá trị trả về dựa trên tên của mối quan hệ Nếu các mối quan hệ tùy chỉnh của bạn không tuân theo quy ước đặt tên này, bạn có thể xác định kiểu trả về của chúng theo cách thủ công. Có hai lựa chọn. "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 57 và "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 58"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 8móc mô hìnhNếu bạn cần thông tin bổ sung về mô hình của mình từ các nguồn không được xử lý theo mặc định, bạn có thể sử dụng móc mô hình để thêm thông tin bổ sung một cách nhanh chóng. Đơn giản chỉ cần tạo một lớp triển khai "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 59 và thêm nó vào mảng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 60 của cấu hình"extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 9Phương thức "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 61 được gọi trong quá trình tạo mô hình và nhận dòng điện đang chạy "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 62 và "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 63, e. gBarryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 0Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 1PHPDocs của các phương thức Fluent của Laravel được tạo tự độngVí dụ: nếu bạn yêu cầu hỗ trợ PHPDocs cho các phương thức Fluent trong quá trình di chuyển, Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 2Chỉ cần thay đổi dòng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 64 trong tệp "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 65 của bạn thành sau khi xuất bản nhà cung cấpBarryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 3Sau đó chạy public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 8; Tự động hoàn thành cho người xây dựng nhà máyNếu bạn muốn các phương thức "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 67 và "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 68 trả về đúng lớp mô hình, hãy bật trình tạo nhà máy tùy chỉnh trong tệp "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 65 của bạn với dòng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 69. Không dùng nữa trong Laravel 8 trở lênBarryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 4Bạn cũng phải xuất bản tệp Meta PhpStorm (xem bên dưới) để tệp này hoạt động Có thể tạo tệp meta PhpStorm bao gồm hỗ trợ cho mẫu thiết kế xuất xưởng. Đối với Laravel, điều này có nghĩa là chúng ta có thể hướng dẫn PhpStorm về loại đối tượng mà chúng ta đang phân giải từ IoC Container. Ví dụ: "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 01 sẽ trả về một đối tượng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 02, vì vậy bạn có thể gọi "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 03 bằng tệp meta và nó sẽ tự động hoàn thành các phương thức của Bộ điều phốiBarryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 5Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 6Ghi chú. Bạn có thể cần phải khởi động lại PhpStorm để đảm bảo rằng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 04 được lập chỉ mụcGhi chú. Khi bạn nhận được FatalException. Kiểm tra cấu hình của bạn (ví dụ: xóa S3 dưới dạng trình điều khiển đám mây nếu bạn chưa định cấu hình S3). Xóa Redis ServiceProvider khi bạn không sử dụng nó. )
Tên tệp được tạo có thể được thay đổi bằng cách sử dụng cấu hình "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 05. Điều này hữu ích nếu bạn muốn tận dụng sự hỗ trợ của PhpStorm cho thư mục "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 06. Nếu bạn muốn cung cấp các tệp bổ sung cho PhpStorm, tất cả các tệp được đặt ở đó sẽ được phân tích cú phápSử dụng với LumenGói này chủ yếu dành cho phát triển Laravel, nhưng nó cũng có thể được sử dụng trong Lumen với một số sửa đổi. Bởi vì Lumen hoạt động khác với Laravel và thay vào đó, các thông số cấu hình chính nằm ở "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 07, nên cần phải có một số sửa đổiKích hoạt mặt tiềnMặc dù Trình trợ giúp IDE của Laravel có thể tạo Mặt tiền mặc định cho gợi ý mã, Lumen không đi kèm với Mặt tiền được bật. Nếu bạn định sử dụng chúng, bạn phải kích hoạt chúng bằng cách bỏ ghi chú dòng này trong phần "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 08Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 7Sau đó, bạn có thể sử dụng chức năng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 09 để thêm nhiều Mặt tiền hơn vào ứng dụng của mìnhThêm nhà cung cấp dịch vụCài đặt Laravel IDE Helper trong "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 10 và bỏ ghi chú dòng đăng ký Nhà cung cấp dịch vụ ứng dụng sẽ cho phép nó tải đúng cáchBarryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 8Nếu bạn không sử dụng dòng đó, dòng này thường hữu ích để quản lý nhiều cài đặt Laravel/Lumen một cách dễ dàng, bạn sẽ cần thêm dòng mã này vào phần "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 11 của tệp "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 07 của mìnhBarryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 9Sau đó, Laravel IDE Helper sẽ hoạt động bình thường. Trong quá trình tạo, tập lệnh có thể đưa ra các ngoại lệ cho biết rằng một số Lớp không tồn tại hoặc một số chỉ mục không được xác định. Điều này là bình thường vì Lumen đã xóa một số gói mặc định, chẳng hạn như Cookie, Lưu trữ và Phiên. Nếu bạn muốn thêm các gói này, bạn phải thực hiện thủ công và có thể cần tạo thêm Mặt tiền Thêm mặt tiền bổ sungLumen IDE Helper hiện không tính đến các Mặt tiền bổ sung được tạo theo "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 07 bằng cách sử dụng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 09, vì vậy, bạn phải tạo tệp public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 4 và thêm lại các bí danh tùy chỉnh của mình dưới mảng "extra": {
"laravel": {
"dont-discover": [
"barryvdh/laravel-ide-helper"
]
}
} 16, như minh họa bên dướipublic function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 0Bạn nên (nhưng không bắt buộc) đổi tên public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 4 thành tên khác sau khi chạy public function register()
{
if ($this->app->isLocal()) {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
// ...
} 8, cho đến khi bạn cần tạo lại tài liệu hoặc sau khi chuyển sang môi trường sản xuất. Quang thông5. Nếu có tệp này, 1 sẽ đọc nó để biết các tham số cấu hình và có thể trùng lặp một số cấu hình nếu nó được điền đầy đủ
Làm cách nào để sử dụng chức năng trợ giúp của Laravel?
Theo dõi tôi bằng cách nhấp vào hồ sơ của tôi để nhận thêm thông tin cập nhật. . Bước 1. tạo một tập tin trợ giúp. Tạo một tệp có tên helpers trong thư mục app/. php Bước 2. Viết hàm trợ giúp Bước 3. Bao gồm nó trong nhà soạn nhạc của chúng tôi. json. . Bước 4. Làm mới danh sách tất cả các lớp của ứng dụng. nhà soạn nhạc dump-autoload
Trong Laravel Blade, làm thế nào để bạn gọi một hàm trợ giúp tùy chỉnh?
Chức năng trợ giúp tùy chỉnh của Laravel với ví dụ thực tế . Tạo một dự án Laravel. Tôi cho rằng bạn đã cài đặt Laravel bằng trình soạn nhạc. . Để tạo chức năng trợ giúp tùy chỉnh, hãy tạo Tệp trợ giúp. . Tạo một nhà cung cấp. . Thêm nhà cung cấp vào cấu hình. . Cuộc gọi từ bộ điều khiển. . Gọi từ Chế độ xem (Blade)
Làm thế nào để bạn viết một hàm trợ giúp trong Laravel 9?
Cách tạo chức năng trợ giúp tùy chỉnh của Laravel 9 . Bước 1. Tạo người trợ giúp. tệp php. Trong bước này, chúng tôi sẽ tạo ứng dụng/trợ lý. . Bước 2. Trong trình soạn thảo, thêm Đường dẫn tệp trợ giúp. tệp json. Trong trình soạn thảo, dán mã bên dưới Bước 3. Chạy lệnh. Chạy lệnh composer dump-autoload trong thiết bị đầu cuối của bạn ngay bây giờ |