嗨我有两张桌子和型号。首先是
用户
和第二
新闻
我想从表News
获取用户ID并绘制她的姓名。表News
的打印屏幕:
我正在尝试使用该功能:
public function getUrUser()
{
$q= News::find()->where(['urUser_Id' =>'Id'])->one();
$RoyalUserData=User::findOne($q);
//$RoyalUserData= User::find()->where(['Id' => $q])->one();
return $RoyalUserData->Name;
}
但这不起作用。只有当我为egzample开出q
值3时才有效。我知道这可能是我的第一行功能中的错误代码。我知道这很容易,但我是初学者,我已经用代码进行了大约1小时的战斗。任何人都可以帮助我吗?
在我看来,我用这个:
<?=$model->getUrUser();?>
我在ListView中使用它。
我的控制器:
public function actionIndex()
{
$model = new NewsForm();
$searchModel = new NewsSearch();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
$dataProvider->setSort(['defaultOrder' => ['Id'=>SORT_DESC]]);
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
$model->saveNews();
return $this->redirect(['/content/news']);
} else {
return $this->render('index', [
'model' => $model,
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
}
}
我使用_item的索引:
echo ListView::widget( [
'dataProvider' => $dataProvider,
'itemView' => '_item',
], $options = ['class' => 'sorter'] ); ?>
_item的内容
<?php
use yii\helpers\Html;
?>
Treść Newsa:
<?=$model->Text;?> <br>
Autor:
<?=Yii::$app->user->identity->Name?>
<?=Yii::$app->user->identity->Surname?> <br>
Status Newsa:
<?=$model->cnNewsContentType_Id;?> <br>
<?= 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',
],
]) ?><br><br><br>
答案 0 :(得分:2)
News::find()->where(['urUser_Id' =>'Id'])->one()
返回模型而非字段
然后你必须通过这种模式得到id字段
public function getUrUser($id)
{
// you already have the news model so don't need retrieve it
// it's enough pass the urUser_Id by $id
$RoyalUserData=User::findOne($id);
return $RoyalUserData->Name;
}
然后,如果你想在_item中显示($ RoyalUserData)名称
<?=$model->getUrUser($model->urUser_Id);?>
答案 1 :(得分:0)
$http.get(serviceUrl).success(function (data, status, headers, config) {
$scope.comboData = [{
year: "2008",
"Accpeted": "20",
"Bed Assigned": "16",
"Patient No-Show": "12"
}, {
year: "2009",
"Accpeted": "10",
"Bed Assigned": "22",
"Patient No-Show": "30"
}, {
year: "2010",
"Accpeted": "5",
"Bed Assigned": "14",
"Patient No-Show": "20"
}, {
year: "2011",
"Accpeted": "5",
"Bed Assigned": "12",
"Patient No-Show": "19"
}
];
});
在用户模型中,您应该创建relation:
public function getUrUser()
{
$q = News::find()->where(['urUser_Id' =>'Id'])->one();
return $q->user->name;
}