lexen77
(Antonio Flaminio)
May 26, 2015, 6:44am
1
Salve,
ho le seguenti 3 tabelle collegate ovvimmente tra di loro con relazioni 1 a molti.
Ho creato la mia View Persone e gestito le tabelle Provincia e Città con due dropDownList correlate seguento
l’essempio trovato in rete
Il Tutto sembra funziona abbastanza bene.
La cosa che non capisco è nella fase di modifica della view la dropDownList conle province non risulta selezionata sul valore corrispondente a cui è associata la citta salvata precedentemente nel database.
Inoltre vorrei sapere ma in questi casi nella view devo avere 2 model ? Cioè uno per gestire i dati di Persona e un’altro per gestire Provincia?
Grazie
Persona
| Persona_id |
| Nome |
| Cognome |
| Citta_id |
Citta
|Citta_id |
|Citta |
Provincia
|Provincia_id |
|Provincia |
Posta il contenuto della view
lexen77
(Antonio Flaminio)
May 26, 2015, 8:53am
3
Ciao Fabrizio,
l’ho modificata e adesso sembra funzionare. Puoi vedere se come logica va bene?
Volevo capire è giuste dichiarare provincia_id come proprieta del modello anagrafica?
In questo modo
nella function actionCreate $model->provincia_id=0
e nella function actionUpdate $model->provincia_id=$model->provinciaId ricavato tramite le relazioni
Grazie
<?php
use yii\helpers\ArrayHelper;
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use kartik\datecontrol\DateControl;
use yii\helpers\Url;
?>
<div class="anagrafica-form">
<?php $form = ActiveForm::begin(); ?>
<div class="row">
<div class="col-sm-4">
<?= $form->field($model, 'nome')->textInput() ?>
</div>
<div class="col-sm-4">
<?= $form->field($model, 'cognome')->textInput() ?>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<?php
$dataProvincia=\app\models\Provincia::listProvince();
echo $form->field($model, 'provincia_id')->dropDownList($dataProvincia,
[
'id'=>'cboProvincia',
'prompt'=>'--- Seleziona ---',
'onchange'=>'
$.get( "'.Url::toRoute('anagrafica/dependdrop').'", { id: $(this).val() } )
.done(function( data )
{
$("select#cboCitta").html(data);
});
']
);
?>
</div>
<div class="col-sm-6">
<?php
$dataCitta=ArrayHelper::map(app\models\Citta::findBySql("select * from Citta where provincia_id='".$model->provincia_id."'")->asArray()->all(), 'citta_id', 'citta');
echo $form->field($model, 'citta_id')->dropDownList(
$dataCitta,
[
'id'=>'cboCitta',
'prompt'=>'--- Seleziona ---',
]
);
?>
</div>
</div>
<div class="form-group">
<?= Html::submitButton($model->isNewRecord ? 'Salva' : 'Salva modifiche', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
antonior14
(Antonior0409)
June 25, 2015, 12:45pm
4
salve, sto cercando di creare un form inserendo delle droplist per campi le cui tabelle sono relazionate…
ad esempio tabella dipendenti con reparto…
non riesco però a comprendere tale meccanismo di gestione help tra l’altro come posso gestire tali contenuti anche in modalità multilingua?
grazie mille ragazzi