在laravel 4.2控制器上使用DB::select()自定义查询


Custom query using DB::select() on laravel 4.2 controller

我在laravel的控制器中使用了自定义查询下面是我在控制器中的代码:

public function c_viewSystemUser()
{
    $title = "View System Users";
    $jSu = DB::select(DB::raw("SELECT dbo_systemusers.SystemUserID,dbo_systemtypes.SystemType, dbo_systemusers.SystemUserName INNER JOIN dbo_systemtypes ON dbo_systemusers.SystemUserTypeID = dbo_systemtypes.SystemUserTypeID"));
    return View::make('ssims.view_systemUser',compact('title','jSu'));
}

我想在刀片文件view_systemUser

中显示它的结果

下面是我在视图中的代码:

@if ($jSu)
<table class="table table-striped table-hover" id="detailTable">
    <thead>
        <tr>
            <th>System User ID</th>
            <th>SystemUser Type ID</th>
            <th>System UserName</th>
            <th>System User Description</th>
        </tr>
    </thead>
    <tbody>
        @foreach ($jSu as $vu)
            <tr>
                    <td>{{ $vu->dbo_systemusers.SystemUserID }}</td>
                    <td>{{ $vu->dbo_systemtypes.SystemType }}</td>
                    <td>{{ $vu->dbo_systemusers.SystemUserName}}</td>
                    <td>{{ $vu->dbo_systemusers.SystemUserDescription}}</td>
            </tr>
        @endforeach
    </tbody>
</table>

和我有一个错误:

未定义属性:stdClass::$dbo_systemusers(查看:C: ' xampp '根' laravel3 ' app ' views ' ssim ' view_systemUser.blade.php)

有什么建议吗?

试试这个:

@foreach ($jSu as $key => $vu)
   <tr>
      <td>{{ $vu->SystemUserID }}</td>
      <td>{{ $vu->SystemType }}</td>
      <td>{{ $vu->SystemUserName}}</td>
      <td>{{ $vu->SystemUserDescription}}</td>
   </tr>
@endforeach

您忘记将dbo_systemusers与dbo_systemtypes连接起来了。试试这段代码

SELECT dbo_systemusers.SystemUserID,dbo_systemtypes.SystemType, dbo_systemusers.SystemUserName from dbo_systemusers INNER JOIN dbo_systemtypes ON dbo_systemusers.SystemUserTypeID = dbo_systemtypes.SystemUserTypeID

在View page上试试

 @foreach ($jSu as $vu)
        <tr>
                <td>{{ $vu->SystemUserID }}</td>
                <td>{{ $vu->SystemType }}</td>
                <td>{{ $vu->SystemUserName}}</td>
                <td>{{ $vu->SystemUserDescription}}</td>
        </tr>
    @endforeach