Heute empfehle ich eine Laravel-spezifische Komponente: SightLaravel kann als die am schnellsten entwickelte Komponente angesehen werden. Wenn Sie jedoch jetzt Sight hinzufügen, wird Ihre Entwicklungsgeschwindigkeit noch schneller.
Was hat Sight getan?Sight hat eine Presenter-Ebene auf der Serverseite implementiert. Dadurch können Sie die vom Server abgerufenen Daten einfach in anzeigbare Daten umwandeln. Seit der Einführung von Sight ist Laravel das einzige Framework, das das MVP-Modell der Serverseite unterstützt. Warum Sight verwenden?
Erstens beschleunigt es die Entwicklung.2. Inländische PHPer wissen alle, dass große Hersteller SQL-Verbindungstabellen mit mehr als drei Tabellen verbieten. Wenn Sie ein Anfänger sind, fragen Sie die Datenbank in einer FOR-Schleife ab. Wenn Sie es verbieten, ist es auch möglich, dass sie den entsprechenden Ausweis herausziehen. Suchen Sie das Ergebnis und verschachteln Sie dann eine FOR-Schleife innerhalb der FOR-Schleife, um die zugehörigen zugehörigen Daten zu überprüfen.
Sight bietet eine sehr gute Pluck-Funktion. Nachdem Sie die ID gefunden haben, fordern Sie die relevanten Daten an und übergeben Sie sie an Sight, und Sight wird die Daten für Sie zusammenfügen. Es organisiert die Daten, indem es die ID mit dem SCHLÜSSEL verknüpft. Dadurch wird die Programmeffizienz erheblich verbessert.
3. Die Verwendung von Sight ist recht einfach.
Zum Beispiel ähnelt das folgende Beispiel fast der Verwendung von Model.
namespace App\Presenter use Bardoqi\Sight\Presenter; use Bardoqi\Sight\Traits\PresenterTrait; use Bardoqi\Sight\Enums\MappingTypeEnum use Bardoqi\Sight\Enums\PaginateTypeEnum use App\Repositories\ArticleRepository; use App\Repositories\UserRepository; class ArticlePresenter extents Presenter { use PresenterTrait; public function getArticleList($where) { $articleArray = ArticleRepository::getList($where); $user_ids = $this->selectFields('id','title','created_at','created_by') ->fromLocal($articleArray,'articles') ->pluck('created_by'); $users = UserRepository::getUsersWithIds($user_ids); $this->innerJoinForeign($users,'userss') ->onRelationByObject(Relation::of() ->localAlias('articles') ->localField('created_by') ->foreignAlias('users') ->foreighField('id')) ->addFieldMappingByObject(FieldMapping::of() ->key('created_at') ->src('created_at') ->type(MappingTypeEnum::METHOD_NAME)) ->addFieldMappingByObject(FieldMapping::of() ->key('created_by') ->src('user_name') ->type(MappingTypeEnum::JOIN_FIELD)); return $this->toPaginateArray(PaginateTypeEnum::PAGINATE_API); } }
Sight ist weit mehr als nur diese Funktion. Es unterstützt nicht nur die von MySQL abgerufenen Daten, sondern auch die von ElasticSearch abgerufenen Daten.
Obwohl es sich um eine reine Array-Operation handelt, verfügt sie auch über innerJoin und OuterJoin sowie hasOne, hasMany ...
Natürlich gibt es noch mehr Funktionen, Sie müssen die Dokumentation sorgfältig lesen.
Sight versucht, das Problem der Konvertierung von Daten in anzeigbare Daten zu lösen, nachdem Sie sie gefunden haben. Es macht einen guten Job und kann Sie beim Codieren wirklich glücklicher machen.
Github-Adresse: https://github.com/ BardoQi/Sight
Sight – die Killerkomponente, die die Laravel-Entwicklung beschleunigt, ist jetzt Open Source! Beeil dich, GABEL, beeil dich, STERN!
Das obige ist der detaillierte Inhalt vonSicht! Eine Killerkomponente, die die Laravel-Entwicklung beschleunigt, ist jetzt Open Source!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!