yii
(jammi )
November 17, 2009, 10:52pm
1
Hallo,
ich habe eine Tabelle über eine M:N Beziehung auf sich selbst gejoined. (oder wie man dazu sagt)
Ich habe meine rules angepasst
array('baseform, wordclass', 'required', 'message' => 'Grundform, und Wortart notwendig'),
In meinem ADD-View, würde ich nun 2 Input Felder einfügen, die jedoch auf das gleiche Feld in der Tabelle zeigen.
Ich habe, dass bis jetzt so gelöst
<input type="text" name="word1">
<input type="text" name="word2">
Natürlich erhalte ich nun die von mir definierte Fehlermeldung, Grundform, und Wortart notwendig’ , da ich ja baseform nicht übergebe.
Mein Problem ist, dass ich die Felder nicht so übergeben kann
Word1: <?php echo CHtml::activeTextField($model, 'baseform'); ?>
Word2: <?php echo CHtml::activeTextField($model, 'baseform'); ?>
Da die Felder sich überschreiben.
Wie kann ich das Problem umgehen?
Dave
(Deventer)
November 18, 2009, 10:19am
2
Übergib doch einfach zwei Instanzen des Models an den View. Dann hast du halt $model1 und $model2.
mbi
(mbi)
November 18, 2009, 11:05am
3
falls ich dein problem richtig verstehe, schau dir doch das blog-tutorial an, speziell wie dort die Tags abgespeichert werden - das ließe sich vielleicht übernehmen?
hier noch der passende link dazu:
http://www.yiiframework.com/doc/blog/post.create
yii
(jammi )
November 18, 2009, 1:02pm
4
stimmt!
Kann ich dem Hidden Field irgendwie ein Model zuweisen?
yii
(jammi )
November 18, 2009, 1:24pm
5
mbi:
falls ich dein problem richtig verstehe, schau dir doch das blog-tutorial an, speziell wie dort die Tags abgespeichert werden - das ließe sich vielleicht übernehmen?
hier noch der passende link dazu:
http://www.yiiframework.com/doc/blog/post.create
Nein,
das ist nicht das was ich gesucht habe, da dort die Tags in einem Feld übergeben werden, ich arbeite hier mit zwei Feldern
Controller
$type1 = new basicforms;
$type2 = new basicforms;
[..]
$this->render('create',array
(
'type1' => $type1,
'type2' => $type2,
)
View
<?php echo CHtml::beginForm(); ?>
<?php echo CHtml::submitButton($type1 ? 'Save' : 'Create'); ?>
<?php echo CHtml::activeTextField( $type1, "baseform", array('size' => 40,'maxlength' => 155)); ?>
<?php echo CHtml::activeTextField( $type2, "baseform", array('size' => 40,'maxlength' => 155)); ?>
<?php echo CHtml::endForm(); ?>
Wenn ich nun jedoch im Model folgendes Mache
print_r($_POST);
Array
(
[yt0] => Save
[basicforms] => Array
(
[baseform] => xyz
)
)
Im Post steht weder die Variable type1 noch type2
Dave
(Deventer)
November 18, 2009, 2:56pm
6
Du übergibst im Controller die $language1 und $language2 und nicht $type1 und $type2 an den view.
yii
(jammi )
November 18, 2009, 2:58pm
7
war von mir grad falsch ins Forum gepostet! Habe es korrigiert