小编ews*_*001的帖子

Yii CDbCriteria和Model-> findAll,如何添加自定义列?

我在Yii有一个日历应用程序,我按用户存储事件.我想动态地为每个事件建立一个标题.

这段代码在我的控制器中:

$criteria = new CDbCriteria;
$criteria->select = array('all_day','end','id','start');
$criteria->condition = 'user_id ='.$user->id;
$events = Calendar::model()->findAll($criteria);
foreach($events as $event) {
  $event->title = 'test title';
}
echo CJSON::encode($events);
Run Code Online (Sandbox Code Playgroud)

在我的日历模型中,我添加了一个名为$ title的新属性:

public $title;
Run Code Online (Sandbox Code Playgroud)

但是当我去回应JSON时,标题没有出现......

[{"all_day":false,"end":"-948712553","id":"2","start":"-146154706"}]
Run Code Online (Sandbox Code Playgroud)

要将标题添加到JSON结果集,我需要做什么?

php yii

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

Yii:如何使用翻译Yii :: t()和超链接

我的代码中有许多与此类似的行:

echo Yii::t('forms','Would you like to create a new item?');
Run Code Online (Sandbox Code Playgroud)

作为一个例子,我想在"创建一个新项目"周围进行超链接.

以下是我考虑过的一些替代方案:

  1. 将URL拆分为2个翻译的字符串,由超链接包围:

    echo Yii::t('forms','Would you like to').' <a href="/new_item">'.Yii::t('forms','create a new item').'</a>?';
    
    Run Code Online (Sandbox Code Playgroud)
  2. 使用占位符,如Yii文档中所述(http://www.yiiframework.com/doc/guide/1.1/en/topics.i18n虽然未给出超链接作为显式示例):

    echo Yii::t('forms','Would you like to {url}create a new item',array('{url}'=>"<a href='/new_item'>")).'</a>?';
    
    Run Code Online (Sandbox Code Playgroud)

这可能是一种更简单的方法,但我一直无法找到首选方法......构建包含URL的翻译字符串的最佳方法是什么?

yii

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

在登录时在Yii框架中启用/禁用基于cookie的登录

我正在开发一个Web应用程序,用户可以在其中选择"记住我"复选框.

如果用户选择记住我,那么将启用基于cookie的登录,我将使用此代码启用cookie:

    Yii::app()->user->login($identity,24*3600*7,true);
Run Code Online (Sandbox Code Playgroud)

如果用户没有选择记住我,那么基于cookie的登录将被禁用,我将使用此代码禁用cookie:

    Yii::app()->user->login($identity,24*3600*7,false);
Run Code Online (Sandbox Code Playgroud)

这里,第三个参数是allowautoLogin,如文档中所述.

我错了吗 ... ?

php cookies yii

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

如何为我的Yii扩展添加自定义配置

我正在尝试在Yii中构建自定义扩展,但无法访问自定义配置.

假设我在main.php中有以下内容:

'my_extension'=>array(
    'class'=>'ext.my_extension.my_extension'
    'custom_config'=>array(
        'first_option'=>array(
            'active'=>true,
            'custom_username'=>'username',
            'custom_password'=>'password',
        ),
    ),
),
Run Code Online (Sandbox Code Playgroud)

如何访问"有效","custom_username"和"custom_password"?

在我扩展CFormModel的扩展中,我试过:

Yii::app()->my_extension->custom_config['first_option']['custom_username'];
Run Code Online (Sandbox Code Playgroud)

但我得到错误:

Property "my_extension.custom_config" is not defined.
Run Code Online (Sandbox Code Playgroud)

configuration yii yii-extensions

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

如何将我的工作 SQL 查询转换为 Linq (C#)?

我有一个可以在 SQL Server 上返回我想要的结果的工作 SQL 查询:

SELECT
  SUM(CriticalCount) As CriticalCount,
  SUM(HighCount) As HighCount,
  SUM(MediumCount) As MediumCount,
  SUM(LowCount) As LowCount,
  Timestamp
FROM [dbo].[TicketCounts]
GROUP BY Timestamp
ORDER BY Timestamp DESC
Run Code Online (Sandbox Code Playgroud)

结果集是:

临界计数 高计数 中数 低计数 时间戳
32 15 18 3 2021-07-01 11:00:00
24 10 42 15 2021-06-30 10:00:00

在我TicketCountRepository的 .Net Core 5.0 项目中,我希望此方法返回相同的结果:

public async Task<IEnumerable<TicketCount>> GetTicketCounts()
{
  return await _dbContext.TicketCounts
      .GroupBy(o => o.Timestamp)
      .Select(tc => new TicketCount
      {
        CriticalCount = tc.Sum(o => o.CriticalCount),
        HighCount = tc.Sum(o => o.HighCount), …
Run Code Online (Sandbox Code Playgroud)

.net c# linq

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

乘以和除

我正和我的同事谈话,他说在代码中最好乘以除法,但他没有争论为什么它更好,所以我决定找出来,所以:

例如,哪种情况更好:

var caseOne = x / 2;
Run Code Online (Sandbox Code Playgroud)

要么

var caseTwo = x * 0.5;
Run Code Online (Sandbox Code Playgroud)

每个人如何做到表现明智?

谢谢你的答案:)

javascript

0
推荐指数
1
解决办法
530
查看次数

标签 统计

yii ×4

php ×2

.net ×1

c# ×1

configuration ×1

cookies ×1

javascript ×1

linq ×1

yii-extensions ×1