Cakephp 3.0 - 异常 : SQLSTATE[42S02]: Base table or view not found

标签 cakephp

我使用 cakephp 3.0 并使用 bin/cake Bakery all 来烘焙所有 View 。但是我在烘焙依赖 View 时遇到错误..就像之前我使用

烘焙产品 View 一样
bin/cake bake all products

但是当我使用相同的

bin/cake bake all products_mix

我收到以下错误

Exception: SQLSTATE[42S02]: Base table or view not found: 1146 Table
'cakephp3_s.products_mix' doesn't exist in
[/home/shital/public_html/cakephp3/myCakeApp/vendor/cakephp/cakephp/src/Database/Schema/Collection.php,
line 130] 2015-02-20 06:35:57 Error: [Cake\Database\Exception]
SQLSTATE[42S02]: Base table or view not found: 1146 Table
'cakephp3_s.products_mix' doesn't exist

任何人都可以帮我解决这个错误吗?我实际上没有明白我在这里犯了什么错误???

最佳答案

当您使用 cakePHP 时,请遵循命名约定,否则它将无法工作。

bin/cake Bakery all products_mix 是错误的表名。因为您必须使用复数名称来查看。请记住,在 cakephp 中,所有名称都是复数除了您的型号。

我建议您使用另一个语法专有名称来查看。就像说 product_tagsproduct_attributes 。看看是否有多个单词可供查看,然后将最后一个单词设为复数。

在其他情况下,如果您有 HABTM(Has And Belongs To Many)关系,则应将这两个词设为复数。与users_courses一样,这里它连接到users、courses表,并包含这些表的外键。因此,根据命名约定,HABTM 表的两个单词均采用复数形式。

cakePHP中的Fore约定,引用Link .

关于Cakephp 3.0 - 异常 : SQLSTATE[42S02]: Base table or view not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28623118/

相关文章:

php - 如何在 CakePHP 2.4 中设置 AuthComponent 的数据库?

javascript - 当我使用 ajax 时重复表单

php - 在同一页面的多个字段上实现money.js

php - 每个用户自动递增

cakephp - Composer 将 jQuery 组件安装在错误的目录中

cakephp - 转义冒号(:) in CakePHP urls

jquery - CakePHP + jQuery AJAX 回调 - 不通过 $session->flash() 删除 session ;

cakephp - 如何使用附加参数 cakephp 传递分页参数?

php - CakePHP 3.8.6 : Authorization failure when adding new content

CakePHP 删除 Cookie 问题