标签: cakephp

将数据从CakePHP组件传递给帮助程序

我需要在组件和帮助器之间共享数据.我正在将我自己的支付服务formdata生成器转换为CakePHP插件,我希望能够从控制器(使用组件)填写支付数据并使用帮助程序打印出数据.

到目前为止我尝试过的所有东西都觉得有点过于讨厌,所以让我问你:有没有优雅的方法将数据从组件传递给帮助器?


编辑:

我通过在组件初始化期间将原始的formadata类实例添加到ClassRegistry来解决了这种特殊情况.这样,帮助程序也可以使用ClassRegistry访问实例.

但是,这仅适用于对象,因此问题仍然存在.

cakephp helper

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

如何使用Cake PHP创建子域?

我正在构建一个站点,该站点需要为每个配置文件提供唯一的子域.我使用的技术是Cake PHP + MongoDB.我需要知道同样的可行性.我是否可以创建物理DNS,或者我可以通过Cake PHP中的Routes Class来简单地路由用户的Profile页面.请提出一些更好,更简单的实施方法以及相同的可行性.

提前致谢.

php subdomain dns cakephp

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

如何将HTML模板转换为Cake PHP模板

我是蛋糕php的初学者.我需要将我的HTML模板转换为Cake PHP模板.任何的想法?

html php cakephp

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

CakePHP - SQL查询中的列别名

在模型上执行find()操作时,是否有一种指定列别名的好方法?

$this->User->find('first', array(
    'fields' => array(
        'CONCAT(firstname, ' ', surname) AS fullname',
        'email',
        'tel'
    )
);
Run Code Online (Sandbox Code Playgroud)

目前,如果我这样做,它会返回如下数据:

Array
(
    [0] => Array
        (
            [fullname] => John Smith
        )

    [User] => Array
        (
            [email] => jsmith@example.com
            [tel] => 0123456789
        )

)
Run Code Online (Sandbox Code Playgroud)

有没有办法让它像普通列一样返回列别名?

Array
(
    [User] => Array
        (
            [fullname] => John Smith
            [email] => jsmith@example.com
            [tel] => 0123456789
        )

)
Run Code Online (Sandbox Code Playgroud)

sql cakephp model

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

在Model上使用HtmlHelper在返回的错误中插入链接

我正在努力CakePHP并试图了解使我的应用程序保持一致和合乎逻辑的最佳方法.

现在我正在尝试Model data validation处理和处理验证错误view,我怀疑如果我想在返回的错误中插入一些链接,我应该怎么做,例如忘记密码.

HtmlHelper在模型中使用(如果可能的话)在我的应用程序中返回一致的链接是好的,还是我应该考虑另一种方式?

<?php
App::import('Helper', 'Html');
class User extends AppModel {
    var $name = 'User';
    var $validate = array (
        'email' => array (
            'checkEmail' => array (
                'rule' => array('email', true),
                'message' => 'Email not valid message.'
            ),
            'checkUnique' => array (
                'rule' => 'isUnique',
                'message' => 'This email is allready in the db, if you forgot the password, '.(string)$this->Html->link('click here', array('controller' => 'users', 'action' => 'password-recover')).'.'   
            )
    )
    // …
Run Code Online (Sandbox Code Playgroud)

cakephp html-helper model

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

Coffeescript和CakePHP

有没有一种简单的方法可以在CakePHP中使用Coffeescript?Rails有Barista,但我找不到类似于CakePHP的东西.理想情况下,透明的东西会将coffeescript按需编译为javascript,并且只有在它发生变化时才会编译.

CakePHP和Coffeescript的谷歌搜索结果引发了很多关于蛋糕命令之间冲突的讨论,但对于将它们一起使用的方式并不多.有人发现了什么吗?或者也许是我自己如何实现这样一个插件的想法?

cakephp coffeescript

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

CakePHP分页计数不匹配查询?

我有一个相当修改的分页查询使用了许多连接等 - 但由于某种原因,paginator-> counter()永远不会匹配计数查询的结果.

您可以在http://dev.qreer.com/上看到它的运行情况- 通过在LHS导航上选择各种选项,查询输出在下面,并且分页器计数看起来非常随机.

知道我可以开始调试这个吗?

在Jobs Controller中:

    $this->paginate = $this->Job->paginateParams($data);
    $jobs = $this->paginate('Job');
    $this->set(compact('jobs'));
Run Code Online (Sandbox Code Playgroud)

在模型中:

function paginateParams($data = null){
        //lots of joins + conditions
        return array('contain' => $contain, 'recursive' => 0,'joins' => $joins, 'conditions' => $conditions, 'group' => 'Job.id', 'order' => $order);
    }
Run Code Online (Sandbox Code Playgroud)

示例连接(所有连接表和数据表的内部连接):

        array(
            'table' => 'education_backgrounds',
            'alias' => 'EducationBackground',
            'type' => 'INNER',
            'conditions' => array('EducationBackgroundsJobs.education_background_id = EducationBackground.id'),
        ),
Run Code Online (Sandbox Code Playgroud)

样品条件:

      'EducationBackground.name' => array('Aerospace Engineering');
Run Code Online (Sandbox Code Playgroud)

php mysql pagination cakephp cakephp-1.3

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

CakePHP - 如何将字符串(如JSON)从控制器操作返回到Ajax请求

所以我让我的JavaScript进行Ajax调用,/my_controller/ajax_action但是在控制器中我不知道如何将某些内容输出回JavaScript.

我收到错误,因为没有查看,MyController::ajaxAction()但显然没有查看,所以我该怎么办?

ajax jquery cakephp

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

Cakephp在查找操作中使用数组变量

我正在创建一个存储在蛋糕Session变量中的候选名单

$this->Session->read('Item.shorlist');
Run Code Online (Sandbox Code Playgroud)

这包含逗号分隔ID的列表,例如.1,2,3,4,5

$shortlist =  $this->Session->read('Item.shorlist');
Run Code Online (Sandbox Code Playgroud)

我想在查找条件中使用此变量中的逗号分隔ID执行查找操作,例如:

$shortlist = $this->Item->find('all', array('conditions' => array('Item.id' => array($shortlist))));
Run Code Online (Sandbox Code Playgroud)

但是,这只返回1组数据.如果我手动输入数组,例如:

$shortlist = $this->Item->find('all', array('conditions' => array('Item.id' => array(1,2,3,4,5))));
Run Code Online (Sandbox Code Playgroud)

我得到了所有5条记录.

任何想法如何解决这个问题而不对每个id执行多次查找?如果我查看SQL转储,我可以看到WHERE Item.id=('1,2,3,4,5')使用$ shortlist变量,而如果我以逗号分隔的整数手动输入,例如:WHERE Item.idIN(1,2,3,4)然后sql查询按照我的意愿工作.所以我想我的问题是如何将逗号分隔的字符串转换为变量中的逗号分隔整数,以便SQL不会抛出错误?

arrays cakephp find

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

cakephp获取表列表的模式

在cakephp中有一种简单的方法来获取特定表列表的表模式数组吗?例如,我想要表a,b,d,f和z的表模式; 另外,有没有办法获得所有表的模式数组?

cakephp

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

标签 统计

cakephp ×10

php ×3

model ×2

ajax ×1

arrays ×1

cakephp-1.3 ×1

coffeescript ×1

dns ×1

find ×1

helper ×1

html ×1

html-helper ×1

jquery ×1

mysql ×1

pagination ×1

sql ×1

subdomain ×1