500miles
根据你错误信息来看 上传文件过大了,
检查一下 服务器php配置参数
upload_max_filesize
根据你错误信息来看 上传文件过大了,
检查一下 服务器php配置参数
upload_max_filesize
composer的问题
如果需求很强烈, 又愿意折腾, 就自己搭一个composer镜像, 自己公司也方便管理内部包了
要不就用国内开源的composer镜像
或者 composer指定私有包.
再就是梯子了
关于两个
cookie collection
的机制.request cookie
是本次请求中, 请求方发送来的cookie
信息;response cookie
是本次请求中, 你要响应给请求方的cookie
信息;因此, 正常情况下的一次请求中, 你成功响应
cookie
后, 下次请求才能拿到上次写入的cookie
;var_dump(Yii::$app->request->cookies);exit;
自然拿不到本次请求中刚刚加入的cookie
了;目测是少了
intl
这个扩展1、最直接的办法 :
在
fields()
中的匿名函数内, 使用下面语句即可获取class Test extends ActiveRecord { public function fields(){ $fields = parent::fields(); $fields['newFields'] = function($model){ // 这里使用 Yii::$app->controller->actionParams["coordinates"]; } } }
当然 这种方法有一定局限性, 如果要使用的数据不属于
actoinParams
怎么办呢?当然你可以给对应的
controller
加属性来解决...但总感觉有点奇技淫巧的feel. 不合套路
2、你可以给对应的模型 加上静态属性
class Test extends ActiveRecord { public static $coordinates; //加上静态属性, 在控制器进行赋值 public function fields(){ $fields = parent::fields(); $fields['newFields'] = function($model){ // 这里使用 $model::$coordinates ...... } } }
因为引入进来了呀.
举个栗子(框架内不是这样的, 但本质相同):
// yii.php <?php class Yii { public static $app; ...... } // demo.php <?php require "yii.php"; Yii::$app->......
- 500miles 回答了问题 下列两表关联SQL查询用AR怎么实现
"SELECT * FROM A t join B b on t.c = b.c where d < 10 order by e desc"
这一条sql 你知道如何用AR实现吧?
你那条和这一条是等价的. 不是的
只是一个类, 并且在入口文件加载进来而已. 大致是这样 :
class Yii { public static $app; ...... }
先说解决办法, 改成下面的形式 :
$query = Equip::find()->andFilterWhere(['is_delete' => 0]); 或者 $query = Equip::find()->andFilterWhere(['and', ['is_delete' => 0]]);
接下来分析
为什么会出现这么有趣的现象
is_delete = 1
可以达到预期,不加这个条件
也可以达到预期, 偏偏is_delete = 0
有问题原因是按照你写的那样, 最终生成的
sql
会是 :select * from table where is_delete and 0 (或者1)
;有意思的是,
select * from table where fieldName
这样的语句并不会报错.我试了下,
fieldName
为空, 为null, 为0的时候, 查不到.其他时候均能查到, 但是此种情况下, 不会用到索引.
上面说的是针对
mysql
, 刚又试了下pgsql
, 这种语法直接抛错 , 你用的是mysql
吧?