NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Addresses for Laravel

Vlastný model adresy

Rozšírte model balíka a v konfigurácii nastavte svoju podtriedu:

namespace App\Models;

use Illuminate\Database\Eloquent\Builder;
use RoundlyConsulting\Addresses\Address as BaseAddress;

class Address extends BaseAddress
{
    protected $table = 'addresses';

    public function scopeInCity(Builder $query, string $city): void
    {
        $query->where('city', $city);
    }
}
// config/addresses.php
'model' => \App\Models\Address::class,

Vzťah v traite, builder, akcie aj fasáda získavajú model z konfigurácie, takže vaša trieda sa všade vytvára, dopytuje aj vracia. Dedí scopy, casty, vzťah addressable, formatted(), správu primárnej adresy, soft deletes aj odosielanie AddressDeleted:

use RoundlyConsulting\Addresses\Facades\Addresses;

$customer->addresses()->inCity('Bratislava')->get();   // your scope, on the package relation
Addresses::for($customer)->primary();                  // returns an App\Models\Address

Pravidlá

  • Trieda musí byť RoundlyConsulting\Addresses\Address alebo od nej dediť. Čokoľvek iné — Eloquent model, ktorý od nej nededí, či hodnota, ktorá vôbec nie je triedou modelu — vyhodí InvalidConfigurationException z package toolkitu s názvom kľúča; cudziu triedu model balíka nikdy potichu nenahradí.
  • Nastavte protected $table = 'addresses' — Eloquent odvodzuje tabuľku z názvu triedy, takže podtrieda s iným názvom by hľadala inú tabuľku.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.