thinkphp視圖模型查詢提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解決方案,vieworder_PHP教程

來源:互聯網
上載者:User

thinkphp視圖模型查詢提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解決方案,vieworder


本文執行個體講述了thinkphp視圖模型查詢失敗提示:ERR: 1146:Table 'db.pr_order_view' doesn't exist解決辦法。分享給大家供大家參考。具體方法如下:

一、問題描述:

想用thinkphp的視圖模型進行關聯查詢,結果出現了這樣的問題(log日誌記錄):ERR: 1146:Table 'db.pr_order_view' doesn't exist,我就納悶,視圖模型怎麼出來的sql是這樣的呢,視圖模型如下:

複製代碼 代碼如下:class OrderViewModel extends ViewModel
{
public $viewFields = array(
'Order' =>array(
'_as'=>'Orders', //重新命名,以免與系統文法衝突
'id'=>'oid',
'ordid',
'user',
'product',
'status',
'paynum',
'cat',
'payment_trade_no',
'ip'=>'mip',
'reserve_time',
'createtime',
'payment_trade_status',
),
'Member'=>array(
'id'=>'mid',
'name'=>'uname',
'cardnum',
'tel',
'reg_time',
'reg_ip',
'qq',
'email',
'address',
'last_login_time',
'last_login_ip',
'_on'=>'Orders.user=Member.id'
),
'Product'=>array(
'id',
'shorttitle',
'img1',
'category',
'_on'=>'Orders.product=Product.id'
),
);
}
?>

二、解決方案:

看了手冊及百度了很多,沒有找到解決方案,調用也沒有錯$Form = D('Admin/OrderView');(這裡我用了分組)經過我自己查看,原來是有問題的,原來視圖模型的名字命名錯了,OrderView.class.php,正常應該是 OrderViewModel.class.php。

對於ThinkPHP初學者來說尤其要注意不要犯這樣的低級錯誤!

希望本文所述對大家的ThinkPHP架構程式設計有所協助。


thinkphp視圖模型3張表聯集查詢

串連不建議做彙總操作,很容易出問題,一般這種都直接同步處理使用者的消費金額,換句話說,就是再單獨一份使用者消費表,使用者有消費的時候就增加這個欄位的值。

或者把你的sql客房訂單和餐飲訂單分開寫,不然就只有嵌套了,似乎沒有這個必要
 

thinkphp M方法的使用問題

你傳的是“RJ1”,M(“RJ1”)這個M方法內傳的是類名,thinkphp在查詢時會將類名轉換為表名。歸則是表首碼+_大寫字母與小寫字
母+_大寫字母與小寫字母,例如AbcDef轉換為表名就是caiyy_abc_def,如果換為小寫就沒問題了action="/Index
/addsoft/rj1",程式還有一點錯誤:
$Form =M($soft);$Form->create();
這裡應該是D($soft);只有D函數建立的對象有create方法.
 

http://www.bkjia.com/PHPjc/903485.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/903485.htmlTechArticlethinkphp視圖模型查詢提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解決方案,vieworder 本文執行個體講述了thinkphp視圖模型查詢失敗提示:ERR: 1146:...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.