CakePHP中保留的数据库表名称是什么?

| 我正在计划数据库,由于CakePHP尚未使用自己的前缀来命名其类,因此有许多类可能与根据命名约定创建的模型类冲突。 所以我的问题分为三个部分: 是否有数据库列表 保留的表名或 检查它是否简单的方法?它 如果我计划数据库会很痛苦 有100张桌子,并注意到一些 桌子及其连接 必须重命名... 有没有解决它的简单方法,而不破坏任何CakePHP的魔力?有建议吗?最好通过在表名开头添加自己的前缀\'my_ \'或类似名称来以其他方式命名表吗? 是名称空间或类似的东西 CakePHP版本2将允许 使用各种表名?     
已邀请:
         不,没有。只要您遵守Cake的命名约定,Cake都不在乎您为表命名的名称。当控制器第一次加载模型时,它会生成用于魔术模型方法的模式。您不必松开手指。参见http://book.cakephp.org/view/903/Model-and-Database-Conventions 最好的建议:不要在这上面打蛋糕。如果您确实不能遵守Cake的约定,那么不建议使用Cake。这真是愚蠢的困难,困惑和成功,只是意味着您已经失去了Cake的大部分举重能力。多元化表名称并不坏,Cake会很高兴。 此功能已在1.3中提供-为您的表格命名任何令您满意的名称(只要它们是复数形式即可)。 -您可能会很乐意在控制台中检出烘焙应用程序,因此您可以熟悉Cake想要看到的内容以及它在不同的表格布局上的工作方式。 澄清后编辑: 您的模型,控制器和视图目录都共享一个通用名称,如下所示:
 // in /app/models/rate.php
class Rate extends AppModel {

     var $name = \'Rate\';


// in /app/controllers/rates_controller.php -- note the underscore
class RatesController extends AppController {

    // controllers are capitalized + plural
    var $name = \'Rates\';
//在/app/views/rates/*.ctp中-Cake \的神奇的autoRender期望找到一个视图文件    //与渲染动作的名称相同-Rates :: index()的视图为index.ctp 您所有的模型都扩展了cake的AppModel类(扩展了Cake的Model类),不需要前缀。所有控制器都将扩展Cake \的AppController类-类名后缀有Controller,文件名后缀有_Controller。 您将在/ app中完善AppModel和AppController,它们明确存在于您可能拥有的所有应用程序级自定义方法/属性中。由于您所有的模型/控制器都对其进行了扩展,因此继承会自动分散您在其中放置的任何属性/方法,例如Auth。 ^ _ ^ 但是您仍然可以为表命名为Models,Controllers,Views或其他名称。 $ name属性是一个别名;您可以使用不同的名称为同一个表在同一模型中创建多个实例。您可以创建不带表的模型,并且可以在单个模型中的多个表(或数据库或服务器)之间切换。您也可以为模型创建非数据库类型的数据对象(例如平面xml文件)。动态命名的类/方法($$ Model :: save()等)无论如何都是在幕后运行。为了使我的应用程序干燥,我在迭代中做了类似的操作,但我没有遇到任何问题。 (尽管我个人怀疑实际上推出一个名为Model的本地模型是否值得您投入实验的努力……) 并请注意,Cake \'s API会说明其方法等所有类(从代码库中的注释中生成): http://api13.cakephp.org/classes HTH。 :D     
        从经验中我知道您不能使用\'files \'和\'models \'之类的表名,因为它们创建了Cake已经用于其他用途的类,例如File和Model。 我还没有遇到过这样的其他问题,但是我敢肯定会找到它们。 我建议避免使用蛋糕核心类使用的任何名称。     
        我知道这是一个旧线程,但是只是偶然发现它正在寻找其他东西。我认为这应该有助于回答问题2。在database.php中,您可以在
DATABASE_CONFIG
类/app/config/database.php中添加数据库表前缀。请参阅下面的配置数组中的最后一个键:
var $default = array(
    \'driver\' => \'mysql\',
    \'persistent\' => false,
    \'host\' => \'localhost\',
    \'login\' => \'user\',
    \'password\' => \'password\',
    \'database\' => \'database_name\',
    \'prefix\' => \'\',
);
    

要回复问题请先登录注册