Nano Hash - криптовалюты, майнинг, программирование

Yii2 Основное действие вызова с другого контроллера

Можно ли вызвать действие из контроллера в другом представлении?

пример

У меня есть 2 контроллера: Post и Blog, поэтому я хочу вызвать actionCreate из сообщения, но внутри представления блога, а не в представлении сообщения. У меня есть 2 представления и 2 контроллера:

view :
 1. views/blog/view
 2. views/post/view

controller
 1. controllers/blogController.php
 2. controllers/postController.php

контроллеры/PostController.php:

public function actionCreate()
{
    $model_Post = new Post();

    if ($model_Post->load(Yii::$app->request->post()) && $model_Post->save()) {
        return $this->redirect(['view', 'id' => $model_Post->Post_id]);
    } else {
        return $this->render('/blog/view', [
            'model_Post' => $model_Post,
        ]);
    }
}

просмотры/блог/view.php

<?php

use yii\helpers\Html;
use yii\widgets\DetailView;

/* @var $this yii\web\View */
/* @var $model app\models\Likectt */

$this->title = $model->Blog_id;

?>
<div class="blog-view">

    <h1><?= Html::encode($this->title) ?></h1>

    <p>
        <?= Html::a('Update', ['update', 'id' => $model->Blog_id], ['class' => 'btn btn-primary']) ?>
        <?= Html::a('Delete', ['delete', 'id' => $model->Blog_id], [
            'class' => 'btn btn-danger',
            'data' => [
                'confirm' => 'Are you sure you want to delete this item?',
                'method' => 'post',
            ],
        ]) ?>
    </p>

    <?= DetailView::widget([
        'model' => $model,
        'attributes' => [
            'Blog_id',
            'Blog_title',
            'Blog_text',
            'User_id',
            'Category_id',
        ],
    ]) ?>

    <?= Yii::$app->runAction('PostController/actionCreate', ['model_Post'=>$model_Post]);?>

</div>
16.03.2018

  • если данный ответ поможет вам, пожалуйста, примите ответ 16.03.2018
  • вы никогда не выбирали ответ из своих предыдущих вопросов, хотя на них были отправлены ответы, это немного странно, когда кто-то тратит на вас время, и вы не отмечаете ответ как правильный, поскольку это помогло бы другим решить проблему, пожалуйста, уберите немного время, чтобы отметить правильный ответ или дать отзыв, если они неверны 16.03.2018
  • до сих пор не устранил проблему 16.03.2018

Ответы:


1

Да, вы можете сделать это:

В вашем блоге:

Yii::$app->runAction('postController/actionCreate', ['param1'=>'value1', 'param2'=>'value2']);
16.03.2018
  • Я получаю эту ошибку: Неопределенная переменная: model_post. В PostController внутри actionCreate у меня есть: return $this-›render('/blog/view', [ 'model_post' =› $model_post, ]);. И в views/blog/view я добавляю: ‹?= Yii::$app-›runAction('PostController/actionCreate', ['model_post'=›$model_post]);?› . Но я получаю сообщение об ошибке 16.03.2018
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..