标签: yii-components

我应该在Yii框架中将自定义窗口小部件文件放在哪里?

从这个页面,

http://www.yiiframework.com/wiki/23/how-to-create-a-breadcrumb-widget/

它似乎表明我们应该将文件放在组件文件夹中.但是如果我的小部件包含javascript和css文件,那么这些文件应该放在哪里?

顺便说一句,这是一个好主意,我创建它作为扩展?如果我这样做,所有窗口小部件文件都更加自包含在扩展文件夹内的文件夹中.但是,由于我要处理的小部件是非常自定义的,因此它不太可能对其他人或我的其他项目有用.使它成为一个扩展似乎有点奇怪.

我明白,只要我在代码中使用的路径是正确的,我放在这些文件的位置并不重要,但我想知道常见的做法.

widget yii yii-components yii-extensions

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

在Yii中运行单个迁移(不是最新的)

我有很少的迁移文件.如果此迁移不是最新的,但迁移历史记录中的一些步骤,我如何向下或向上运行单个迁移?

当我运行时yiic migrate up 1,它运行最新的迁移.使用迁移版本作为参数运行迁移命令也没有帮助.

yii yii-components

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

Yii2同一模型的多个实例

我想在我的控制器中获得相同模型的乘法实例.我在Yii 1.1中看到了这个wiki,并尝试了这样但是在我的代码中,只有最后一个实例在表单中才能从控制器加入我的代码在这里(我评论了带有错误和变量值的代码):

$model = new Person(['scenario' => 'create_update']);
$contractDate = new DatePart(); // DatePart is my own class
$contractExpirationDate = new DatePart(); // DatePart is my own class

if ($model->load(Yii::$app->request->post()) &&
    $contractDate->load(Yii::$app->request->post()) &&
    $contractExpirationDate->load(Yii::$app->request->post())){

    Yii::info(Yii::$app->request->post(),'test'); // only one instance of Person and one instance of DatePart are available here
    Yii::info($_POST['DatePart'],'test'); // only last instance of DatePart (contractExpirationDate in html form) is available here
    Yii::info($_POST['DatePart'][0],'test'); // Error: Undefined offset: 0
    Yii::info($_POST['DatePart'][1],'test'); // Error: Undefined offset: 1

    $model->save(); …
Run Code Online (Sandbox Code Playgroud)

php yii yii-components yii-extensions yii2

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

DropDownList yii 2.0示例

我正在使用yii 2.0 Framework.我如何从我的数据库中选择.我发现了这个,但它是yii 1.1:

<?php echo CHtml::dropDownList('listname', $select, 
          array('M' => 'Male', 'F' => 'Female'));
Run Code Online (Sandbox Code Playgroud)

我想把它传递给:

<?php $form->dropDownList() ?>
Run Code Online (Sandbox Code Playgroud)

我如何从我的数据库表填充我的下拉列表?

yii-components yii2

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

带有复杂$ textField的CHtml :: listData

我想在模型中使用一些属性作为textField.像这样的东西:

$form->dropDownList(
    $formModel, 
    'ref_attribute', 
    CHtml::listData(
        User::model()->findAll(array('order'=>'attribute1 ASC, attribute2 ASC')), 
        'id', 
        'attribute1 attribute2 (attribute3)'), 
    array()
);
Run Code Online (Sandbox Code Playgroud)

这样'attribute1 attribute2 (attribute3)'就会自动转换为正确的属性值.我试过"按原样"编写它'attribute1 attribute2 (attribute3)',并在模型(fullName())中创建一个中间函数,但似乎没有任何效果.

提前致谢.

php yii yii-components

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

如何在Yii https上创建绝对URL?

我正在创建一个运行在https上的网站..但是当我创建绝对网址时使用

echo    Yii::app()->createAbsoluteUrl('site/index');
Run Code Online (Sandbox Code Playgroud)

它总是返回http://mydomainname.com/site/index.

我的预期输出是https://mydomainname.com/site/index.

如何使用https创建网址?

php yii yii-components

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

如何在yii框架中使用SimpleSAMLphp?

我在yii框架中有两个项目,我想使用SimpleSAMLphp和SSO两个项目.我需要的条件是,如果我从第一个项目登录,我想访问第二个项目.先感谢您.

yii yii-components simplesamlphp

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

Yii2 REST + Angular Cross Domain CORS

我开发了Angular和Yii2 REST服务.在跨域有问题.下面添加我的angular&Yii2 REST代码.

AngularJs:(像' http://organization1.example.com ', ' http://organization2.example.com ',....)

$http.defaults.useXDomain = true;
$http.defaults.withCredentials = true;
$http.defaults.headers.common['Authorization'] = 'Bearer ' + MYTOKEN
Run Code Online (Sandbox Code Playgroud)

我来自Angular Controller的请求:

apiURL = 'http://api.example.com';
$http.get(apiURL + '/roles')
     .success(function (roles) { })
     .error(function () { });
Run Code Online (Sandbox Code Playgroud)

Yii2 .htaccess :( REST网址如' http://api.example.com ')

Header always set Access-Control-Allow-Origin: "*"
Header always set Access-Control-Allow-Credentials: true
Header always set Access-Control-Allow-Methods "POST, GET, PUT, DELETE, OPTIONS"
Header always set Access-Control-Allow-Headers "Authorization,X-Requested-With, content-type"
Run Code Online (Sandbox Code Playgroud)

Yii2我的行为:

public function behaviors() {
    $behaviors = parent::behaviors();
    $behaviors['corsFilter'] = [
        'class' …
Run Code Online (Sandbox Code Playgroud)

rest yii-components angularjs yii2 yii2-advanced-app

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

Yii框架中的CListView

嘿伙计们我已经开始研究yii框架了,我正在关注yii博客教程,在本教程中学习yii框架的基础知识,他们在帖子视图中使用了ClistView,但是我得到了一个例外 在此输入图像描述


这是我在视图文件中使用的代码:

$this->breadcrumbs=array(
    'Posts'=>array('index'),
    $model->post_id,
);

$this->menu=array(
    array('label'=>'List Posts', 'url'=>array('index')),
    array('label'=>'Create Posts', 'url'=>array('create')),
    array('label'=>'Update Posts', 'url'=>array('update', 'id'=>$model->post_id)),
    array('label'=>'Delete Posts', 'url'=>'#', 'linkOptions'=>array('submit'=>array('delete','id'=>$model->post_id),'confirm'=>'Are you sure you want to delete this item?')),
    array('label'=>'Manage Posts', 'url'=>array('admin')),
);
?>

<?php if( !empty($_GET['tag']) ) : ?>
<h1>Posts Tagged with <em><?php echo CHtml::encode($_GET['tag']); ?></em></h1>
<?php endif; ?>

<?php $this->widget('zii.widgets.CListView', array(
    'dataProvider' => $model,
    'itemView' => '_view',
    'template' => "{items}\n{pager}",
));
Run Code Online (Sandbox Code Playgroud)


这是我的PostsController包含的内容:

/**
     * Displays a particular model.
     * @param integer $id the ID of the model to …
Run Code Online (Sandbox Code Playgroud)

php frameworks yii yii-components

5
推荐指数
0
解决办法
2465
查看次数

在Yii中将此查询转换为CDbCriteria格式

我仍然在Yii 1.xx中编写CDbCriteria的全部功能 - 我有一个相当复杂的SQL查询,我希望使用CDbCriteria格式转换为模型中的查询(如果可以使用更复杂的查询.

我最初尝试这个..

$criteria = new CDbCriteria;
$criteria->select = array(
    't.classroom_id, title',
    'COALESCE(COUNT(DISTINCT r.redeemed_code_id),0) AS totalRewards',
    'COALESCE(COUNT(DISTINCT ocm.user_id),0) AS totalStudents',
    'COALESCE(SUM(r.points),0) AS totalPoints'
 );
Run Code Online (Sandbox Code Playgroud)

任何人都可以使用以下查询建议最好的方法吗?建议任何建议,谢谢..

SELECT
  t.classroom_id,
  title,
  COALESCE ( r.classRewards, 0 ) AS totalRewards,
  COALESCE ( r.classPoints, 0) AS totalPoints,
  COALESCE ( COUNT(DISTINCT ocm.user_id), 0 ) AS totalStudents
 FROM
  organisation_classrooms t
     LEFT JOIN ( select crc.classroom_id,
                        COUNT( DISTINCT crc.redeemed_code_id ) AS classRewards,
                        SUM( crc.points ) as classPoints
                    from classroom_redeemed_codes crc
                       JOIN organisation_classrooms t
                          ON crc.classroom_id = t.classroom_id …
Run Code Online (Sandbox Code Playgroud)

php mysql yii yii-components

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