谁一开始就是大神?

PHP 第15页

PHP

Yii2自义表单模型如何update时自动写入内容?[2.0]

dmStag阅读(51)

我新建了一个表单模型 PostForm 继承 Model类;
定义了2个public属性 title 和 content;

提交表单时,写入2张表,title写入post表,content写入post_extend表。

那么在更新时候,如何才能自动写入内容呢?就是 _form 视图是公共的。

用两个不同的model
<?php echo $form->field($userForm, ‘password’)->passwordInput(); ?>
<?= $form->field($model, ‘nickname’)->textInput([‘maxlength’ => true]) ?>
在渲染的时候把这两张表的模型带过来应该就可以了吧! 你试试
这个当然是在你表单提交的方法中进行,或者在你rules中进行配置
在规则中配置

查询数据[2.0]

OldEagle阅读(52)

新手一个,官方手册中关于数据查询的说明中,提到一个$app,请问这个$app什么意思
5.png

表示 yii/base/application
好像都得这样写

时任务求大神解答[2.0]

Oldslim阅读(49)

C6B1FDF0-2422-4EDF-8D7D-A9D5E63758D9.png

求大神解答
我就是想做个定时任务比如备份数据库

应该是cd到当前项目,然后再运行 xxxx/yii test/index
chdir
定时运行 代码 能不能分享一下 谢谢

继承CActiveRecord的模型,添加自义属性,在验证方法rules里面获取不到

Anibubble阅读(66)

class Ref_info extends CActiveRecord {
    public $new_journal; //自定义的属性

    public function rules() { //表单验证
        return array(
            array('new_journal','checkNumber'),
        );
        
    }

    public function checkNumber($attribute){  //自定义的验证方法
        $val=$this->$attribute; //这里获取不到自定义属性的值,但是能获取表的字段属性值
        $this->addError($attribute,$val);
     }
}

rules里面加一句这个试试:
自定义项在模型中配置了如何取值没?
ActiveRecord?
还是1.1版本?

为何使用了AR模型还要使用表单模型呢?

BraveCherry阅读(57)

哈喽大家好,本人刚开始学习Yii,有个问题想请教大家。
yii中已经有了AR模型为什么还要使用表单模型呢?比如,yii创建了一个用户表的AR模型,然后做用户注册和登录的时候,还要做两个表单模型分别用于用户注册和登录。其实注册和登录的动作完全可以直接在用户AR模型实现的,指定不同场景就可以了,为什么要多创建两个表单模型呢?这样一个表单就相应创建一个模型不是会越来越乱吗?
有点疑惑,请大家不吝赐教,谢谢!

为了脱离数据库层,架构建设考虑把,后期如果换数据库层了可以直接改掉AR就是了
………………….
这两种方式都用过。
通过不同场景实现会让场景过多, 而且增加场景后rule要做调整,有时还会影响其他场景,代码没那么清晰。
通过Form Model让各代码变得更单纯更清晰,更利于以后的维护。

请问独立验证器支持客户端验证该怎么写呢?

foreverslim阅读(62)

如下图所示,我是按照官网上介绍的,独立验证器支持客户端验证,但是返回JS代码这样写不对,报错了,有哪位同学知道的可以告诉我该怎么写呢?谢谢!
另外,行内验证器为什么无法支持客户端验证呢?
图片1.png

//实例:客户端验证器
文件位置:
\advanced\frontend\components\validators\StatusValidator.php
文件位置:
\advanced\frontend\views\post\validator.php
文件位置:
\advanced\frontend\models\Validator.php
这样试试:
另外,$okay传到客户端应该是个字符串,你用字符串比较试一下。
你的例子完全可以用 compare validator

rules验证问题,求大神[2.0]

Fionanice阅读(61)

我想写这样的验证规则 ,一个年级五个班级要求每个班级内不能有重复的名字,但是年级里可以有重复的。比如一班有小明,一班就不能再出现小明这个名字,别的班级可以有小明的名字,这样的怎么写。。rules有没有内置的这样规则

unique里面家filter,具体做法参照yii\validators\UniqueValidator
没有,自己写方法验证!!!!!!
yii 只给你提供了一些最基本的,这个有点复杂了,得自己定义了。
其实你这种问题,百度一大堆。给你个解决方案吧。可以参考,自定义验证

QueryBuilder里面,不等于空怎么写[2.0]

Bellasea阅读(55)

$sql = “SELECT * FROM user WHERE username <> ” “;
类似于这个语句的构造器怎么写
$query->andFilterWhere([‘<>’,’username’,”]);
这样是不对的

andWhere([‘NOT’, [‘username’ => null]])
->andFilterWhere([‘NOT’, [‘username’ => ‘null’]])
首先你要确认查询的字段类型,字符串的话
[‘is not’, ‘id’, null]

ActiveForm里面的action失效[2.0]

coolsea阅读(63)

6668.jpg

ActiveForm里面的action失效,好像写法不对,请问有大神知道是哪里错了吗?谢谢!

‘action’=>[‘order/fahuo’]
‘action’ => Yii::$app->createUrl();
别把网上复制的yii1代码往yii2里粘贴啊。。 \yii\helpers\Url::to('order/fahuo') 你要的应该是这个吧

Yii2符合表单模型的疑问求解惑[2.0]

Jadeapple阅读(51)

1.png
因为目前数据表设计是一个post帖子主表(标题、浏览量、阅读量等等字段),一个extra表(帖子ID、内容等字段),一个attach附件表(帖子ID、附件地址等字段)

要求发帖时候,同时向这几张表写入内容;编辑时同时渲染这几张表的内容。

最初我是建立了一张新的表单模型表,继承model,把需要的字段全部public形式放在这个表单模型中,通过事务进行多张表数据的写入,OK似乎没有问题,但是在编辑时,不知道怎么去渲染数据了,因为它继承了Model。无奈求助后发现有多模型同时输入章节这个章节。

原理似乎很简单,渲染多个AR模型,进行实例化,并各自load数据,然后验证,然后save保存。似乎问题可以得到解决,但是有以下几个疑问:

1、怎么去保证它的事务呢?每次都需要通过 && 进行吗?如果有更多的复合表单模型,岂不是全部都要load && 一遍? 然后全部validate &&一遍?再全部 save &&一遍? 感觉好别扭!
2、不知道我最初的办法,新建表单模型的那种是否可行? 可行的话,如何在编辑时候渲染数据呢?

“新建表单模型”的思路没问题。假设:
帖子修改操作的控制器代码大致如下:
“多模型同时输入”也可以。你觉得“别扭”的三个 &&:
前两个是必须的,最后一个可以放在一个事务内。过程大致如下:
涉及多个表的操作,其实可以用一个 Form model去封装一下。。但是我看官方的教程,直接就写在了控制器里!!其实大同小异了。条条大路通罗马!!
模型和业务逻辑联系在了一起,nice

登录

找回密码

注册