在Yii中,有没有一种方法可以使用不同于为Controller定义的layout来呈现单个操作?我有一个Action,我想采用与其他Action不同的格式,如果可能的话,文档中并不清楚。 最佳答案 我相信您可以调用$layout变量来执行该操作。publicfunctionactionYourAction(){$this->layout='nameOfYourAltLayout';}下面链接中的说明表明您必须为每个操作设置此变量,因为您不能只设置默认公共(public)变量并期望其他操作默认返回此变量。http://www.yiif
我正在尝试设置一个带有View链接的按钮。但是yii\bootstrap\Button没有属性url。我宁愿使用Yii,因为它应该只使用flatoutphp。下面的代码是理想的情况,但是由于url选项不存在,是否有其他方法可以使用Yii解决此问题?echoButton::Widget(['label'=>'label','options'=>['class'=>'btnbtn-primary'],'url'=>Url::toRoute(['/controller/action']),]); 最佳答案 您可以简单地使用Html::a(
我正在尝试设置一个带有View链接的按钮。但是yii\bootstrap\Button没有属性url。我宁愿使用Yii,因为它应该只使用flatoutphp。下面的代码是理想的情况,但是由于url选项不存在,是否有其他方法可以使用Yii解决此问题?echoButton::Widget(['label'=>'label','options'=>['class'=>'btnbtn-primary'],'url'=>Url::toRoute(['/controller/action']),]); 最佳答案 您可以简单地使用Html::a(
我可以像这样为单个整数定义规则:[['x'],'integer']是否可以判断x是一个整数数组?例如:[['x'],'integer[]']我可以指定数组中的有效值吗?更新:从Yii2.0.4版开始,我们得到了一些帮助。见thisanswer. 最佳答案 从版本2.0.4开始有新的EachValidator现在更容易了:['x','each','rule'=>['integer']],这应该足够了。如果还应该检查这些值,您可以使用它(使用'in'validator,它实际上是RangeValidator):['x','each','
我可以像这样为单个整数定义规则:[['x'],'integer']是否可以判断x是一个整数数组?例如:[['x'],'integer[]']我可以指定数组中的有效值吗?更新:从Yii2.0.4版开始,我们得到了一些帮助。见thisanswer. 最佳答案 从版本2.0.4开始有新的EachValidator现在更容易了:['x','each','rule'=>['integer']],这应该足够了。如果还应该检查这些值,您可以使用它(使用'in'validator,它实际上是RangeValidator):['x','each','
如何在yii2中获取登录用户的名称?我可以通过获取用户IDYii::$app->user->id;我知道我可以在数据库中找到这个名字,但我想要一个直接的方法。数据库中的名称列名称为“用户名”,但是Yii::$app->user->username;不工作并且Yii::$app->user->name;也不行。 最佳答案 登录时,用户信息将存储在Yii::$app->user->identity变量中。有关更多信息,请阅读UserAuthenticationdocumentation在官方指南中。
如何在yii2中获取登录用户的名称?我可以通过获取用户IDYii::$app->user->id;我知道我可以在数据库中找到这个名字,但我想要一个直接的方法。数据库中的名称列名称为“用户名”,但是Yii::$app->user->username;不工作并且Yii::$app->user->name;也不行。 最佳答案 登录时,用户信息将存储在Yii::$app->user->identity变量中。有关更多信息,请阅读UserAuthenticationdocumentation在官方指南中。
如何检查数据库中模型的存在?在Yii1版本中是这样的User::model()->exist() 最佳答案 在Yii2中,您可以将exists()添加到您的查询链中:User::find()->where(['id'=>1])->exists();(生成的SQL如下所示:SELECT1FROM`tbl_user`WHERE`id`=1。)这里是Query->exists()fromYii2source:/***Returnsavalueindicatingwhetherthequeryresultcontainsanyrowofda
如何检查数据库中模型的存在?在Yii1版本中是这样的User::model()->exist() 最佳答案 在Yii2中,您可以将exists()添加到您的查询链中:User::find()->where(['id'=>1])->exists();(生成的SQL如下所示:SELECT1FROM`tbl_user`WHERE`id`=1。)这里是Query->exists()fromYii2source:/***Returnsavalueindicatingwhetherthequeryresultcontainsanyrowofda
我有一个ActiveForm,我想添加一个用户可以上传照片的字段。问题是我没有用户表中图像的属性,并且每个'yii'中的输入字段需要一个模型和一个属性,如下所示。field($model,'attribute')->input($platforms)?>我不想将图像分配给任何记录,也不想插入数据库中,我希望将其上传到特定文件夹。我也查了kartik写的库,还需要一个属性字段。 最佳答案 遵循官方文档https://github.com/yiisoft/yii2/blob/master/docs/guide/input-file-up