2014-04-30 7 views
6

einfügen Ich bin der Neuling in Laravel Entwicklung. Ich benutze die MySQL-Datenbank und möchte die Rohdaten in die Datenbank einfügen. Ich füge die Spalte mit $table->binary() hinzu. Und wie kann ich die Daten in die Spalte einfügen?Wie rohe Daten in MySQL-Datenbank in Laravel

Schema::table('users', function($table) 
{ 
    $table->binary('raw'); 
}); 
+0

http://laravel.com/docs/database –

+0

Laravel verwendet das MVC-Paradigma. Die Datenbank soll über das Modell aktualisiert werden. Durch die Ansicht, die ein Benutzer eingibt, sagen wir beispielsweise einen neuen Benutzer, erhält der Controller die Postanforderung und übergibt die Daten an das Modell, und das Modell aktualisiert die Datenbank. Dies beantwortet nicht Ihre Frage, sondern gibt Ihnen die Grundlage für Laravel. – sidneydobber

Antwort

9

Try this:

Angenommen, Sie die folgenden Tabellen haben (so genannte 'users')

id|user|fname|lname|email|etc.. 
------------------------- 
1|jdoe|john|doe|[email protected]|blah.... 

DB::table('users')->insert(
    array('user' => 'jdoe', 
      'fname' => 'john', 
      'lname' => 'doe', 
      'email' => '[email protected]') 
); 

Der Einsatz() mehrere Array akzeptiert (was wiederum auf einzelne Spalten abgebildet werden in deiner Tabelle).

Ich hoffe, dass Sie das brauchen.

auf dieser Docs Basierend: http://laravel.com/docs/queries#inserts

+0

Dies sollte die akzeptierte Antwort sein –

1

Sie vielleicht einen Blick auf Eloquent haben möchten, die Standard-ORM, die Laravel verwendet. Es macht mit Datenbanken sehr einfach. Manche Leute denken vielleicht anders, aber das kann über Schnittstellen und Repositories gelöst werden.

Laravel verwendet das MVC-Paradigma. Die Datenbank soll über das Modell aktualisiert werden. Durch die Ansicht, die ein Benutzer eingibt, sagen wir beispielsweise einen neuen Benutzer, erhält der Controller die Postanforderung und übergibt die Daten an das Modell, und das Modell aktualisiert die Datenbank.

Nehmen wir an, Sie werden das Laravel-Standardbenutzermodell verwenden. Dieses Modell erstreckt sich bereits von Eloquent. Sie sollten bereits eine Datenbank mit:

Benutzertabelle Datenbank

id, auto_increment 
username, varchar(255) 
password, varchar(255) 
email, varchar(255) 
created_at (datetime) 
updated_at (datetime) 

app/models/User.php

class User extends Eloquent implements UserInterface, RemindableInterface { 

app/controllers/HomeController.php

public function showWelcome() 
{ 
    $user = new User; 
    $user->username = 'johndoe'; 
    $user->email = '[email protected]'; 
    $user->password = 'password'; 
    $user->save(); 
    return View::make('hello'); 
} 

Wenn Sie die Datenbank korrekt eingerichtet haben und die Benutzertabelle migriert haben, sollte dies funktionieren und Ihnen einen guten Status geben Ausgangspunkt für die Interaktion mit der Datenbank in Laravel. Dies ist nicht die bevorzugte Methode zum Hinzufügen von Daten zur Datenbank, da diese Aktion nicht innerhalb des Controllers platziert werden sollte, aber dies wäre ein nächster Schritt. Ich habe Laravel auf diese Weise gelernt und es hilft dir wirklich, das Framework richtig zu verstehen.

PS:

DB::query('insert into users (username, email, password) values ("johndoe", "[email protected]", "password")'); 

Dies ist sehr unsicher und anfällig für SQL-Injection, aber Laravel bietet Lösungen für diese, auch für rohe Abfragen.

Verwandte Themen