Redirect von einer view zu einer anderen view - Yii2
Dies ist meine form, in der Ansicht-Seite meiner website.
<?= $form->field($model, 'taskID')->textInput(['readonly' => true, 'value' => Yii::$app->getRequest()->getQueryParam('id')]) ?>
<?php
$ifDistributor = User::find()->select('userType')->where(['username'=>Yii::$app->user->identity->username])->andWhere(['userType'=>'Distributer'])->exists();
$ifDistributorHasOnSiteSupport = Distributorinfo::find()->select('hasOnSiteSupport')->where(['UName'=>Yii::$app->user->identity->username])->andWhere(['hasOnSiteSupport'=>1])->exists();
if($ifDistributor)
if($ifDistributorHasOnSiteSupport)
echo $form->field($model, 'assignedToID')->dropDownList(
ArrayHelper::map(dektrium\user\models\User::find()
->select('username')
->where(['userType'=>'CCE-Distributer'])
->andWhere(['distributerID'=>Yii::$app->user->getId()])
->all(),'username','username'),['prompt'=>'Select Person']
);
else {
Yii::$app->session->setFlash('error',
"Invalid Page");
//I WANT TO REDIRECT TO index.php?r=tasks/index THIS URL
}
?>
<?= $form->field($model, 'remarks') ?>
<?= $form->field($model, 'scheduledTime')->widget(DateTimePicker::classname(), [
'options' => ['placeholder' => 'Enter event time ...'],
'pluginOptions' => [
'autoclose' => true
]
]) ?>
<div class="form-group">
<?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?>
</div>
Wie oben dargestellt in den else-Teil, will ich einen redirect zu tasks/index
diese url.
Helft mir, wie kann ich tun, dass Sie in diesem Ansicht nur.
return Yii::$app->response->redirect(Url::to(['path', 'id' => id]));
Redirect()- Das hat geklappt. Aber braucht 'yii\helpers\Url;' Danke für Ihre Antwort.. 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
Url::to()
und vergessen Sie nicht, fügen Sieyii\helpers\Url
im Header.Beispielsweise
Redirect()
Umleitungen werden durchgeführt, Controller oder einige Komponenten zusammen, aber nicht in Aussicht, weil rendering ist nicht sinnvoll in diesem Fall.
Controller, die Sie verwenden können, kürzere form:
Beachten Sie, dass Sie nicht haben, zu verwenden
Url::to()
Helfer für den Aufbau der url, weil es bereits angewendet intern.Können Sie auch verwenden:
Yii::$app->controller->redirect
, wenn der controller unbekannt ist, wird diese Methode ruftYii::$app->response->redirect
als Wahnsinnigen Schädel erwähnt in seiner Antwort.Werfen Sie einen Blick auf die controller-code generiert von GII zu sehen, wie redirect verwendet wird, nach dem speichern /löschen.