usuwanie problem z odnalezieniem id

Mam dane użytkowników które wyświetlają się, gdy wchodzę do widoku (view). I w tym widoku chciałbym umożliwić użytkownikowi usunięcie dodatkowych danych z innego modelu(z drugiej tabeli z kluczem obcym). Zrobiłem więc funkcję find, która pobiera od id użytkownika i na tej podstawie szuka w tabeli jego dodatkowe dane(które chce usunąć) i przekazuję to do widoku. Zrobiłem w kontrolerze takie akcje:


public function actionView($id) {


        return $this->render('view', [

                    'model' => $this->findModel($id),

                    'userDate'=>$this->findData($id)

        ]);

    }




 public function actionDelet($id) {


    $this->findData($id)->delete();


    return $this->redirect(['index']);

}


public function findData($id){

     if (($model = Profile::findOne($id)) !== null) {

         $id=$model->Rel_RoyalUserData;

         $user = UrRoyalUserData::find()->where(['Id' => $id])->one();


        return $user;

    } else {

        throw new NotFoundHttpException('The requested page does not st.');

    }


}

I w widoku wyświetlam dane użytkownika i dodatkowo stawiłem przycisk do usuwania tych dodatkowych danych:


<?php


use yii\helpers\Html;

use yii\widgets\DetailView;


/* @var $this yii\web\View */

/* @var $model frontend\modules\settings\models\Profile */


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

$this->params['breadcrumbs'][] = ['label' => 'Profiles', 'url' => ['index']];

$this->params['breadcrumbs'][] = $this->title;

?>

<div class="profile-view">


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


    <p>

        <?= Html::a('Update', ['update', 'id' => $model->Id], ['class' => 'btn btn-primary']) ?>

        <?= Html::a('Delete', ['delete', 'id' => $model->Id], [

            'class' => 'btn btn-danger',

            'data' => [

                'confirm' => 'Are you sure you want to delete this item?',

                'method' => 'post',

            ],

        ]) ?>

    </p>


    <?= DetailView::widget([

        'model' => $model,

        'attributes' => [

            'Id',

            'Name',

            'Surname',

           

        ],

    ]) ?>

    

     <p>

        <?= Html::a('Update', ['update', 'id' => $userDate->Id], ['class' => 'btn btn-primary']) ?>

        <?= Html::a('Delete', ['delet', 'id' => $userDate->Id], [

            'class' => 'btn btn-danger',

            'data' => [

                'confirm' => 'Are you sure you want to delete this item?',

                'method' => 'post',

            ],

        ]) ?>

    </p>


</div>

Jednak po kliknięciu delete mam :Not Found (#404)

The requested page does not st.

Akcja nazywa się Delet, ponieważ w kontrolerze mam jeszczę inna akcję delete do usuwania tego usera.

Chociaż te dodatkowe dane pobierają się dobrze bo sprawdzałęm var_dumpem, że jest to akurat to id i ten obiekt. A error pochodzi z funkcji find która napisałem. Ktoś widzi gdzie zrobiłem bład?

No warunek masz nie spełniony. Sprawdzałeś czy dla suchych danych ci zwraca odpowiedniego użytkownika w metodzie findata? bo aktualnie zwraca ci null.


<?= Html::a('Delete', ['delet', 'id' => $userDate->Id], [

W parametrze przesyłasz id z modelu UrRoyalUserData a w twojej metodzie szukasz modelu Profile z tym ID. Prawdopodobnie musisz zamienić $userDate->Id na $model->Id.