2016-04-27 12 views
0

Mein Problem ist es, Formulare durch jquery dynamisch zu erstellen. Der Benutzer sollte in der Lage sein, Eingaben dynamisch zu generieren, sodass er mehrere Zeilen gleichzeitig in dem entsprechenden Modell/der Tabelle speichern kann. Jetzt weiß ich nicht, wie ich das name Attribut für die Formulare für mehrere Modelle generieren. Ich nehme an, es so etwas wie ModelName[Property][] sein soll (aber ich mag vorzugsweise, es zu tun in ‚Yü Weg‘ statt hartzucodieren die Namen)Wie verwende ich ein einzelnes Formular, um Daten für zwei oder mehr Modelle in Yii2 zu sammeln?

dies besser zu verstehen, hier fand ich eine ähnliche Position in Yü Wiki.

using a single form to collect data for two or more models

Wie kann dies für Yii2 geändert werden? Damit sollte der Benutzer in der Lage sein, Daten für alle (dynamisch generierten) Zeilen zu füllen und sie auf einmal zu senden.

+0

Haben Sie mehrere Zeilen für einen Tisch oder wollen einreichen Daten für mehrere Modelle durch ein Formular hinzufügen möchten. ?? Ich bin verwirrt, als ich den ganzen Beitrag gelesen habe! –

+0

Entschuldigung, in der Tat könnte ich bessere Wörter gewählt haben. Ich möchte mehrere Zeilen für dieselbe Tabelle hinzufügen. du hast es richtig! :) –

+0

Ihr Fragetitel sagt etwas anderes :) –

Antwort

0

die Sie interessieren, Reference

public function actionCreate() 
{ 
    $user = new User; 
    $profile = new Profile; 

    if ($user->load(Yii::$app->request->post()) && $profile->load(Yii::$app->request->post()) && Model::validateMultiple([$user, $profile])) { 

     $user->save(false); // skip validation as model is already validated 
     $profile->user_id = $user->id; 
     $profile->save(false); 

     return $this->redirect(['view', 'id' => $user->id]); 
    } else { 
     return $this->render('create', [ 
      'user' => $user, 
      'profile' => $profile, 
     ]); 
    } 
} 
+0

eine kleine Bearbeitung: $ profile-'>' save (false); –

Verwandte Themen