【问题标题】:Paginate Dynamically created table in Cakephp?在 Cakephp 中对动态创建的表进行分页?
【发布时间】:2011-06-11 14:41:19
【问题描述】:

请看示例代码

            mysql_query('SET AUTOCOMMIT=0;');
            mysql_query('START TRANSACTION;');
            $tableName = rand().'_table;'
            $this->loadModel('Home'); // Model for homes_table

            $sql = 'CREATE TABLE '.$tableName.'_table LIKE homes_table';
            mysql_query($sql);
            // FEW INSERT STATEMENTS ON THE NEW TABLE $tableName //
            /*

            Here I want to paginate the new table
            using $this->paginate(); 
            HOW?

            */

        mysql_query('TRUNCATE table '.$tableName);
        mysql_query('COMMIT;');

我想对创建的新表进行分页? 逻辑是每次一个人运行脚本时,都会创建一个新的随机命名表->然后分页->然后删除......或者我如何将模型分配给 cakePHP 中动态创建的表。

【问题讨论】:

    标签: php cakephp model dynamic pagination


    【解决方案1】:

    听起来你正在做的事情很糟糕。除此之外,你不应该调用 CREATE TABLE、TRUNCATE、COMMIT 等。

    查看有关如何正确创建和删除表的 sest 套件,阅读有关如何执行事务的 api。类似http://api13.cakephp.org/class/data-source#method-DataSourcebegin

    蛋糕的表名也应该是复数才能自动执行此操作,因此您的示例将不起作用。

    你可以通过做得到模型的实例

    $Something = ClassRegistry::init(Inflector::classify($tableName . '_suffix'));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-26
      • 2015-04-05
      • 2012-12-01
      • 2014-01-25
      相关资源
      最近更新 更多