小编hao*_*ang的帖子

yii2:如何响应图片并让浏览器显示出来?

可以通过以下代码完成相同的工作:

header('Content-Type:image/jpeg');
readfile('a.jpg');
Run Code Online (Sandbox Code Playgroud)

但是现在我对Yii2感到很困惑 \yii\web\Response.


我困惑的是这样的:

  1. 创建一个控制器和动作来提供图片

    见下文

    class ServerController extends \yii\web\Controller
    {
        public function actionIndex($name)
        {
            // how to response
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 访问 http://example.com/index.php?r=server/index&name=foo.jpg

谢谢你的回答!

yii2

6
推荐指数
4
解决办法
1万
查看次数

如何使用Yii 2构建像`select ... where id%2 = 1`这样的查询?

当然,我可以Yii::$app->db->createCommand($sql)->query(),但如果我想用一个ActiveRecord::find()->where($conditions)来完成这项工作呢?

activerecord yii2

6
推荐指数
2
解决办法
1331
查看次数

如何在模块中创建控制台命令?

console command就像./yii hello/world.

我正在使用yii-app-basic.

我想要的不是在dir中创建控制台命令commands/而是在module.

yii2

6
推荐指数
1
解决办法
2572
查看次数

Yii 2:如何在2个表之间使用ActiveRecord构建搜索查询?

我用了Yii 2.

要明确:

  • 两个表,即内容和任务,是1:1的关系,task.content_id = content.id;
  • 我引用了 doc.
  • 在视图文件中,我使用Gridview来显示数据.
  • 而且我想内容也是可搜索的,即使它在另一张桌子里.

也许以下的sql可以解释我想要的东西:

SELECT 
    c.content, 
    t.publish_status 
FROM 
    content c, task t 
WHERE 
    c.content LIKE '%keywordInContent%' AND
    t.publish_status = 1 AND
    c.id = t.content_id 
ORDER BY 
    updated_at 
LIMIT 20;
Run Code Online (Sandbox Code Playgroud)

这是我的控制器代码:

public function actionIndex()
{
    $searchModel = new TaskSearch;
    $dataProvider = $searchModel->search(Yii::$app->getRequest()->get());

    return $this->render('index', [
        'dataProvider' => $dataProvider,
        'searchModel' => $searchModel,
    ]);
}
Run Code Online (Sandbox Code Playgroud)

和搜索模型代码:

public function search($params)
{
    $query = Task::find()->trashed(Task::TRASHED_NO);

    $dataProvider = new ActiveDataProvider([
        'query' => $query,
    ]);

    if (!($this->load($params) && $this->validate())) …
Run Code Online (Sandbox Code Playgroud)

activerecord yii2

4
推荐指数
1
解决办法
2万
查看次数

Yii2: how to define a formatter for GridView columns property

I have an is_active(tiny-int) field in user table.

Also I define some meanings for is_active:

code in params.php

return [
  'enumData' => [
      'is_active' => [1 => '?', 0 => '×'],
  ]
];
Run Code Online (Sandbox Code Playgroud)

code in user\index.php

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'columns' => [
        [
            'attribute' =>   'is_active',
            'format' => 'raw',
            'value' => function ($model) {
                return Yii::$app->params['enumData']['is_active'][$model->is_active]

            },
        ],
    ],
]); ?>
Run Code Online (Sandbox Code Playgroud)

Want I want is like this in user\index.php

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'columns' => …
Run Code Online (Sandbox Code Playgroud)

yii2

2
推荐指数
1
解决办法
4157
查看次数

标签 统计

yii2 ×5

activerecord ×2