2016-04-07 6 views
3

Ich habe eine Address table in meiner mySQL-Datenbank mit einigen Feldern.Warum sollte ich ein Nullable-Feld verwenden/nicht verwenden Laravel - MySQL

Auf meinem Formular ich einen Benutzer bitten, Werte für diese Felder einzugeben. Aber die street field is not required. Wenn mein Formular übermittelt wird, ist meine Column Street in meiner Datenbank leer. Dies funktioniert einwandfrei und gibt keine Fehler, ohne die Spalte so einzustellen, dass sie NULL akzeptiert.

Also meine Frage ist:

Was ist der Vorteil der Straße Spalte Einstellung auf NULL-Werte zulässt?

Beispiel Migration (Laravel) ohne Nullable-:

$table->string('street'); 

Beispiel Migration mit Nullable-

$table->string('street')->nullable(); 

Beide arbeiten gut.

+1

In Ihrem Fall ist es wahrscheinlich nicht wirklich wichtig. In einer anderen Anwendung ist eine leere Zeichenfolge möglicherweise nicht die gleiche wie die Abwesenheit einer Zeichenfolge, so dass null dort einen Zweck erfüllt. Im Allgemeinen mache ich Felder, die als "Best Practice" ausgelassen werden können, aber das ist nichts, was Sie tun müssen. –

+0

Können Sie ein Beispiel geben, wo es wichtig ist? – Christophvh

+0

Wenn Sie nicht wissen, dass Sie den Unterschied brauchen, ist es unwahrscheinlich, dass dies eine Rolle spielt. :) –

Antwort

1

Es ist nur eine gute Methode, explizite anstelle von implizit zu verwenden, wo es möglich ist. Also würde ich mit nullable und is_null() nach Null gehen gehen.

Mit diesem Ansatz erhalten Sie weniger Fehler, besser lesbaren Code usw.

Verwandte Themen