Laravel: Creazione di un modello

14 Jan 2020 | M.A.D.R.

Continuiamo questa escalation per la comprensione del framework Laravel, nello specifico parliamo dei Modelli per la gestione dei dati.

Approfondisci: Programmazione con pattern MVC - Il Model

Abbiamo visto la struttura della nostra applicazione dopo aver installato il framework, adesso dobbiamo iniziare a prendere familiarità con i comandi di artisan.

Partiamo con la prima operazione da eseguire per comprendere meglio:

php artisan make:model [ModelName]

Questo comando creerà nella nostra directory app un file che estende Eloquent\Model , ossia il nostro ORM.

La lista dei parametri per la creazione del modello:

  • --migration o -m "Genera la migration"
  • --controller o -c "Genera il relativo controller"
  • --resource o -r "Indica se il controller generato è di risorse"
  • --factory o -f "Genera il relativo facotory"
  • --all o -a "Genera tutti i file relativi al model" (lo preferisco)

Analizzando nel dettaglio la sintassi potremmo scrivere il comando in questo modo:

php artisan make:model NostroModel -a

Come detto in precedenza questo creerà un nuovo file PHP in app/ per impostazione predefinita, denominato NostroModel, e conterrà tutto lo standard per il nuovo modello, che include la classe, lo spazio dei nomi e l'uso richiesto per una configurazione di base.

Avendo aggiunto il parametro "-a" ossia genera tutti i file necessari, che ricapitolando saranno inseriti in:

  • Controller: app/Http/Controllers
  • Migration: database/migrations/nome_model.php
  • Factory: database/factories/nome_modelFactory.php

Configurazione del modello

Eloquent segue un approccio "convenzionale", ossia estende la classe Model base.

Questo significa che tutti i modelli ereditano le proprietà del Model base.

Salvo sovrascrittura, si applicano i seguenti valori predefiniti:

ProprietàDescrizionePredefinito
protected $connectionNome della connessione DBConnessione DB predefinita
protected $tableNome della tabellaConv. SpecialPerson diventa special_people
protected $primaryKeyTabella PKid
public $incrementingIndica se gli ID sono a incremento automaticotrue
public $timestampsIndica se il modello deve essere timestamptrue
const CREATED_ATNome della colonna timestamp di creazionecreated_at
const UPDATED_ATNome della colonna timestamp di modificaupdated_at
protected $datesAttributi che devono essere modificati in DateTime, oltre agli attributi di timestamp[]
protected $dateFormatFormato in cui gli attributi della data saranno mantenutiPredefinito SQL corrente.
protected $withRapporti da caricare con il modello[]
protected $hiddenAttributi omessi nella serializzazione del modello[]
protected $visibleAttributi consentiti nella serializzazione del modello[]
protected $appendsAccessors di attributi aggiunti alla serializzazione del modello[]
protected $fillableAttributi che sono assegnabili in serie[]
protected $guardedAttributi elencati in nero dall'assegnazione di massa[*] (Tutti gli attributi)
protected $touchesLe relazioni che dovrebbero essere toccate al salvataggio[]
protected $perPageIl numero di modelli da restituire per l'impaginazione.15

Laravel: Creazione di un modello

14 Jan 2020 | M.A.D.R.

Continuiamo questa escalation per la comprensione del framework Laravel, nello specifico parliamo dei Modelli per la gestione dei dati. Approfondisci: Programmazione con pattern MVC - Il Model Abbiamo visto la struttura della nostra applicazio...

Distribuire l'applicazione Laravel >5.6

14 Jan 2020 | M.A.D.R.

Esponiamo il contenuto dell'applicazione, in modo tale che può essere richiesta da chiunque Abbiamo visto come installare Laravel (qui), oggi proviamo a distribuire l'applicazione creata in precedenza. Dopo aver sviluppato l'applicazione sul ...

Artisan - PHPUnit: Creaimo e testiamo il nostro codice

14 Jan 2020 | M.A.D.R.

Scrivere un codice verificabile è una parte importante della costruzione di un progetto robusto, manutenibile e agile. In questo Laravel è il miglior framework in circolazione. Il supporto per si chiama PHPUnit , che è integrato direttamente ...

Primi passi con Laravel: Installazione

14 Jan 2020 | M.A.D.R.

L'installazione di laravel risulta molto semplice e intuitiva in basso la lista dei semplici comandi: composer create-project --prefer-dist laravel/laravel "path""path" è la directory che conterra tutto il frameworkphp artisan serve Due sempl...

A proposito di Laravel

14 Jan 2020 | M.A.D.R.

Creato da Taylor Otwell come un framework web PHP open-source gratuito, Laravel ha lo scopo di facilitare e accelerare il processo di sviluppo delle applicazioni web con un grande gusto per la semplicità. Segue lo schema di modello model-view-contr...

Soluzioni complete per ogni esigenza