2016-08-04 100 views
1

我試圖檢索基於用戶選擇的值,我加入了使用first方法。但是,當我試圖把價值觀放在我的表格中時。它說列未找到:1054未知列使用加入

SQLSTATE [42S22]:列未找到:1054未知列 'sent_document_user.document.id' 在 '關於條款'(SQL:選擇documentstitlecategoriescategory_typedocumentscontentdocuments。。 idsent_document_user內上documents加入documentsid = sent_document_userdocumentid內上categoriescategories加入。id = documentscategory_id其中documentsid = 241限制1)``

我加入它正確我不知道爲什麼我不能檢索我選擇的值。這是我在SQL中的代碼,運行良好。

SELECT D.title, C.category_type, D.content, D.id FROM sent_document_user SD 
INNER JOIN documents D ON SD.document_id = D.id 
INNER JOIN categories C ON D.category_id = C.id; 

控制器

public function readSentDocuments($id) 
{ 
    $documentLists = DB::table('sent_document_user')->select('documents.title', 'categories.category_type', 'documents.content', 'documents.id') 
    ->join('documents', 'documents.id', '=', 'sent_document_user.document.id') 
    ->join('categories', 'categories.id', '=', 'documents.category_id') 
    ->where('documents.id', '=', $id)->first(); 

    return view ('document.readSent')->with('documentLists', $documentLists); 
} 

查看

<div class = "form-group"> 

        <label for = "title" class = "control-label">Title:</label> 
        <input type = "text" name = "title" class = "form-control" value = "{{ $documentLists->title }}"> 

       </div> 

       <div class = "form-group"> 

        <label for = "category" class = "control-label">Category:</label> 
        <input type = "text" name = "category" class = "form-control" value = "{{ $documentLists->category_type }}"> 

       </div> 

       <div class = "form-group"> 

        <textarea id = "content">{{ $documentLists->content }}</textarea> 

</div> 
+0

你怎麼能使用''sent_document_user.document.id。你是否在查詢中指'sent_document_user.document' –

回答

0

看來你有一個不正確的列名

->join('documents', 'documents.id', '=', 'sent_document_user.document.id') 

嘗試sent_document_user.document_id的代替sent_document_user.document.id

3

錯字:

->join('documents', 'documents.id', '=', 'sent_document_user.document.id') 
                   here--^ 

辛格e這是一個.,數據庫服務器將它解釋爲dbname.tablename.fieldname,並且您沒有名爲sent_document_user的數據庫。

相關問題