я просто хочу просмотреть свои записи из моей базы данных, используя laravel - PullRequest
0 голосов
/ 06 сентября 2018

я просто пытаюсь создать базу данных для студентов, но когда я запрашиваю страницу просмотра записей, она не работает и выдает ошибку, почему она не работает, я просто хочу просмотреть свои записи из своей базы данных

Контроллер

namespace App\Http\Controllers;
 use Illuminate\Http\Request;
 use DB;
 use App\Http\Requests;
 use App\Http\Controllers\Controller;
 class StudViewController extends Controller {
 public function index(){
 /*$users = DB::select('select * from tudent');*/
 $users = DB::table('student')->select(DB::raw('*'))->get();
 return view('stud_view',['users'=>$users]);
  }
  }

это вид

      <html>

       <head>
       <title>View Student Records</title>
      </head>

        <body>
      <table border = 1>
     <tr>
        <td>ID</td>
        <td>Name</td>
     </tr>
      @foreach ($users as $user)
     <tr>
        <td>{{ $user->id }}</td>
        <td>{{ $user->name }}</td>
       </tr>
       @endforeach
      </table>

     </body>
     </html>

это маршрут

    Route::get('/', function () {
    return view('welcome');
     });

     // ----------- insert student --------------
       Route::get('insert','StudInsertController@insertform');
       Route::post('create','StudInsertController@insert');

    // ----------- view Record --------------
       Route::get('view-records','StudViewController@index');

Ответы [ 3 ]

0 голосов
/ 06 сентября 2018
  1. Прежде всего вы должны сделать свой код более читабельным, учитывая отступы кодирования и присвоение имен переменным
  2. Во-вторых, вы можете использовать модель Student, чтобы получить всех студентов в DB. Не нужно использовать фасад DB
  3. Нет необходимости создавать 2 контроллера StudViewController и StudInsertController для управления данными учащихся, но вы должны создать один контроллер с именем StudentController. Внутри этого контроллера вы можете выполнять несколько действий: index, create, update и т. Д. Маршруты будут:

    Route::get('/', function () {
        return view('welcome');
    });
    
    // ----------- insert student --------------
    Route::get('create','StudentController@create');
    Route::post('store','StudentController@store');
    
    // ----------- list students --------------
    Route::get('list','StudentController@index');
    

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Student;

class StudViewController extends Controller
{
     public function index()
     {
          $students = Student::all();

          return view('stud_view', ['students' => $students]);
     }
}

В stud_view просмотрите доступ к ученикам, как вы уже сделали:

@foreach ($students as $student)
    <tr>
        <td>{{ $student->id }}</td>
        <td>{{ $student->name }}</td>
    </tr>
@endforeach
0 голосов
/ 06 сентября 2018

Пожалуйста, попробуйте этот код

namespace App\Http\Controllers;
use App\User;
use Auth;
use DB;
use Session;
use Illuminate\Http\Request;

class UsersController extends Controller
{
   public function index(){
        if(Session::has('adminSession')){
          //$users = User::paginate(2);
       //  $users=User::Where('admin','=','')->get();
          $users = User::where(['admin' => null])->get();        
        //echo "<pre>";print_r($users);die;

         return view('admin.users.users',compact('users'));
        }else{
          return redirect('/admin')->with('flash_message_error','Please login to access');
        }
0 голосов
/ 06 сентября 2018

Попробуйте это

public function index(){
 /*$users = DB::select('select * from tudent');*/
 $users = DB::table('student')->select(DB::raw('*'))->get();
 dd($users);
 return view('stud_view',['users'=>$users]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...