2016-08-04 102 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的数据库。

相关问题