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\AddressPravidlá
- 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 kryptomienOdoslaní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.