dtncv04228 2016-06-14 12:58
浏览 11

如何更改URL从动作中呈现另一个视图?

This is my action:

public function actionRend()
{
    $model = new RentForm();
    $parameter = Yii::$app->request->get('id');
    $query = Cars::findOne(['description' => $parameter]);
    $query = Car_rend_tariffs::find()->where(['car' => $query->id])->all();
    $rend = [];
    $i=0;
    if ($model->load(Yii::$app->request->post()) && $model->validate()) {
        $seconds = strtotime($model->start_time);
        $seconds_2 = strtotime($model->end_time);
        $seconds = ($seconds_2 - $seconds)/3600;
        $seconds = ceil($seconds);
        if ($seconds < 1) {
            $error_message = "Время аренды не может быть меньше часа";
            return $this->render('rend',[
            'model' => $model,
            'seconds' => $seconds,
            'error' => $error_message
            ]);
        }
        $query = Cars::findOne(['description' => $parameter]);
        $query_rent = Car_rend_time::find()->where('min_use_time <= :min_use_time and max_use_time >= :max_use_time',['min_use_time' => $seconds,'max_use_time' => $seconds])->one();
        $query_tariff = Car_rend_tariffs::findOne(['car' => $query->id,'car_rend_time' => $query_rent->id]);
        $tariff_view = Car_rend_tariff_views::findOne(['id' => $query_tariff->tariff]);
        $sum = $tariff_view->min_cost + ($seconds - $query_rent->min_use_time)*$tariff_view->additional_hour_cost;
        $payment = new PaymentForm();
        return $this->render('payment',[
            'model' => $payment,
            'service' => $query_tariff,
            'sum' => $sum
        ]);
    }
    return $this->render('rend',[
        'model' => $model
    ]);
}

These are UrlManager rules in my config:

'urlManager' => [
    'class' => 'yii\web\UrlManager',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
        'rules' => [
            '' => 'main/default/index',
            '<_a:error>' => 'main/default/<_a>',
            '<_a:(login|logout)>' => 'admin/default/<_a>',
            '<_a:(admin)>' => 'admin/default/login',
            '<_a:(flight)>' => 'main/service/flight',
            '<_a:(auto)>' => 'main/service/auto',
            '<_a:(rend)>' => 'main/service/rend',
            '<_a:(payment)>' => 'main/service/payment',

            '<_m:[\w\-]+>/<_c:[\w\-]+>/<id:\d+>' => '<_m>/<_c>/view',
            '<_m:[\w\-]+>/<_c:[\w\-]+>/<_a:[\w\-]+>/<id:\d+>' => '<_m>/<_c>/<_a>',
            '<_m:[\w\-]+>' => '<_m>/default/index',
            '<_m:[\w\-]+>/<_c:[\w\-]+>' => '<_m>/<_c>/index',
        ],
],
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 测距传感器数据手册i2c
    • ¥15 RPA正常跑,cmd输入cookies跑不出来
    • ¥15 求帮我调试一下freefem代码
    • ¥15 matlab代码解决,怎么运行
    • ¥15 R语言Rstudio突然无法启动
    • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
    • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
    • ¥15 用windows做服务的同志有吗
    • ¥60 求一个简单的网页(标签-安全|关键词-上传)
    • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法