2015-06-04 3 views
5
in Klein

Ich frage mich nur, warum das Schema Builder in Laravel automatisch alle Kamel Fall in Kleinbuchstaben in der TabelleLaravel Schema Builder konvertiert Tabellenname

Eg Benennung konvertieren

Schema::create('myTable', function(Blueprint $table) 
    { 
     .... 
    }); 

Es Tabellenname erstellt: Mytable

Warum ist das? Ist das eine Konvention von Laravel? Ich sehe es nicht in der Laravel Docs Schema Builder Seite.

Dank

Antwort

3

Es ist eine gängige Praxis Schlange Fall in Tabellennamen und Feldnamen und es ist nur zu Laravel aber die meisten Menschen folgen dieser Konvention im Zusammenhang nicht so gut zu nutzen. In Laravel ‚s alten (4x) Dokumentation, es wurde erwähnt, dass:

Bitte beachten, dass wir Eloquent nicht sagen, welche Tabelle für unsere Benutzer Modell zu verwenden. Der Kleinbuchstabe, Pluralname der Klasse wird als Tabellenname verwendet, sofern kein anderer Name explizit angegeben ist. In diesem Fall wird Eloquent annehmen, dass das Benutzermodell Datensätze in der Tabelle des Benutzers speichert. Sie können durch die Definition einer Tabelleneigenschaft auf Ihr Modell eine benutzerdefinierte Tabelle angeben:

class User extends Eloquent { 

    protected $table = 'my_users'; 

} 

Also, ja, Laravel verwendet strtolower Funktion an vielen Orten und wahrscheinlich dies ist besser, die gemeinsame Konvention zu folgen und es ist (my_table) bekannt als snake case.