Laravel 5.2 使用 .blade 视图显示 table
Laravel 5.2 Showing a table using a .blade view
我有我的数据库,已经迁移了所有内容,我的代码可以在需要时在我的 table 中记录新条目,等等。
我有一个 table,其内容为:'id'、'name'、'lastname'、'email'、'phone'、'address'.
我想要的是,当您点击提交按钮时,您将被重定向到一个新的 'view.blade.php',您可以在其中看到数据库的所有条目,包括最近的条目。但是我不知道如何开发此代码以使其工作。
我需要这方面的帮助,谢谢。
谢谢。
在您的控制器函数中,在将新记录存储到 table 后立即执行此操作。
假设您的型号名称是 User
从用户模型中获取所有用户记录,
$users = App\User::all();
将此用户变量传递给查看(假设您的 view.blade.php
在 resources/views
文件夹中)
return View::make('view', compact('users'));
然后在您的 view.blade.php 中您可以执行类似这样的操作来显示所有用户记录。
<table>
<thead>
<tr>
<th> id</th>
<th> name</th>
<th> last name </th>
<th> email </th>
<th> phone</th>
<th> adddress </th>
</tr>
</thead>
<tbody>
@foreach($users as $user)
<tr>
<td> {{$user->id}} </td>
<td> {{$user->name}} </td>
<td> {{$user->last_name}} </td>
<td> {{$user->email}} </td>
<td> {{$user->phone}} </td>
<td> {{$user->address}} </td>
</tr>
@endforeach
</tbody>
</table>
//form.blade.php
<form method="post" action="{{ route('submitForm') }}">
{!! csrf_field() !!}
<input type="text" name="name"/>
<input type="text" name="last_name"/>
<input type="text" name="email"/>
<input type="text" name="phone"/>
<input type="text" name="address"/>
</form>
<?php
//app/Http/controllers/YourController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
//user is your eloquent model
class YourController extends Controller
{
//show user form
public function showForm()
{
return view('form');
}
//post url for submit form
public function submitForm(Request $request){
$this->validate($request, [
'name' => 'required|min:2|max:30',
'lastname' => 'required|min:2|max:30',
'email' => 'required',
'phone' => 'required',
'address' => 'required'
]);
$user = new User();
$user->name = $request->name;
$user->lastname = $request->lastname;
$user->email = $request->email;
$user->phone = $request->phone;
$user->address = $request->address;
try{
$user->save();
return redirect()->route('showAllusers')->with('success', "User was successfully created..!");
}
catch(Exception $e){
return redirect()->back()->with('error', "Could not save the user!");
}
return redirect()->back()->with('error', "Error Occured, please try again!");
}
// after form submit, redirect to this page where all users will be showcased
public function showAllusers()
{
$users = User::all();
return view('allusers', compact('users'));
}
}
?>
//allusers.blade.php
@if($users->count > 0)
<table>
<thead>
<tr>
<th> id</th>
<th> name</th>
<th> last name </th>
<th> email </th>
<th> phone</th>
<th> adddress </th>
</tr>
</thead>
<tbody>
@foreach($users as $user)
<tr>
<td> {{$user->id}} </td>
<td> {{$user->name}} </td>
<td> {{$user->last_name}} </td>
<td> {{$user->email}} </td>
<td> {{$user->phone}} </td>
<td> {{$user->address}} </td>
</tr>
@endforeach
</tbody>
</table>
@else
<p> No users found..</p>
@endif
//routes.php
<?php
Route::get('/showForm', 'YourController@index')->name('showForm');
Route::post('/submitForm', 'YourController@index')->name('submitForm');
Route::get('/showAllusers', 'YourController@index')->name('showAllusers');
?>
我应该写这段代码来显示所有 users
table 数据:
//Function for store users data
public fucntion store(Request $request){
$insertData = DB::table('users')->insert(array(
'name'=>$request->name,
'lastname'=>$request->lastname,
'email'=>$request->email,
'phone'=>$request->phone,
'address'=>$request->address
));
return Redirect::to('/view')
}
//fucntion for display users data
public fucntion view(){
$rsltUsers = User::get();
return view('view', compact('rsltUsers'));
}
view.blade.php
<table class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th>Name</th>
<th>Last Name</th>
<th>Email</th>
<th>Phone</th>
<th>Address</th>
</tr>
</thead>
<tbody>
@foreach($rsltUsers as $rsltUser)
<td>{!! $rsltUser->name !!}</td>
<td>{!! $rsltUser->lastname !!}</td>
<td>{!! $rsltUser->email !!}</td>
<td>{!! $rsltUser->phone !!}</td>
<td>{!! $rsltUser->address !!}</td>
@endforeach
</tbody>
</table>
我有我的数据库,已经迁移了所有内容,我的代码可以在需要时在我的 table 中记录新条目,等等。
我有一个 table,其内容为:'id'、'name'、'lastname'、'email'、'phone'、'address'.
我想要的是,当您点击提交按钮时,您将被重定向到一个新的 'view.blade.php',您可以在其中看到数据库的所有条目,包括最近的条目。但是我不知道如何开发此代码以使其工作。
我需要这方面的帮助,谢谢。 谢谢。
在您的控制器函数中,在将新记录存储到 table 后立即执行此操作。
假设您的型号名称是 User
从用户模型中获取所有用户记录,
$users = App\User::all();
将此用户变量传递给查看(假设您的 view.blade.php
在 resources/views
文件夹中)
return View::make('view', compact('users'));
然后在您的 view.blade.php 中您可以执行类似这样的操作来显示所有用户记录。
<table>
<thead>
<tr>
<th> id</th>
<th> name</th>
<th> last name </th>
<th> email </th>
<th> phone</th>
<th> adddress </th>
</tr>
</thead>
<tbody>
@foreach($users as $user)
<tr>
<td> {{$user->id}} </td>
<td> {{$user->name}} </td>
<td> {{$user->last_name}} </td>
<td> {{$user->email}} </td>
<td> {{$user->phone}} </td>
<td> {{$user->address}} </td>
</tr>
@endforeach
</tbody>
</table>
//form.blade.php
<form method="post" action="{{ route('submitForm') }}">
{!! csrf_field() !!}
<input type="text" name="name"/>
<input type="text" name="last_name"/>
<input type="text" name="email"/>
<input type="text" name="phone"/>
<input type="text" name="address"/>
</form>
<?php
//app/Http/controllers/YourController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
//user is your eloquent model
class YourController extends Controller
{
//show user form
public function showForm()
{
return view('form');
}
//post url for submit form
public function submitForm(Request $request){
$this->validate($request, [
'name' => 'required|min:2|max:30',
'lastname' => 'required|min:2|max:30',
'email' => 'required',
'phone' => 'required',
'address' => 'required'
]);
$user = new User();
$user->name = $request->name;
$user->lastname = $request->lastname;
$user->email = $request->email;
$user->phone = $request->phone;
$user->address = $request->address;
try{
$user->save();
return redirect()->route('showAllusers')->with('success', "User was successfully created..!");
}
catch(Exception $e){
return redirect()->back()->with('error', "Could not save the user!");
}
return redirect()->back()->with('error', "Error Occured, please try again!");
}
// after form submit, redirect to this page where all users will be showcased
public function showAllusers()
{
$users = User::all();
return view('allusers', compact('users'));
}
}
?>
//allusers.blade.php
@if($users->count > 0)
<table>
<thead>
<tr>
<th> id</th>
<th> name</th>
<th> last name </th>
<th> email </th>
<th> phone</th>
<th> adddress </th>
</tr>
</thead>
<tbody>
@foreach($users as $user)
<tr>
<td> {{$user->id}} </td>
<td> {{$user->name}} </td>
<td> {{$user->last_name}} </td>
<td> {{$user->email}} </td>
<td> {{$user->phone}} </td>
<td> {{$user->address}} </td>
</tr>
@endforeach
</tbody>
</table>
@else
<p> No users found..</p>
@endif
//routes.php
<?php
Route::get('/showForm', 'YourController@index')->name('showForm');
Route::post('/submitForm', 'YourController@index')->name('submitForm');
Route::get('/showAllusers', 'YourController@index')->name('showAllusers');
?>
我应该写这段代码来显示所有 users
table 数据:
//Function for store users data
public fucntion store(Request $request){
$insertData = DB::table('users')->insert(array(
'name'=>$request->name,
'lastname'=>$request->lastname,
'email'=>$request->email,
'phone'=>$request->phone,
'address'=>$request->address
));
return Redirect::to('/view')
}
//fucntion for display users data
public fucntion view(){
$rsltUsers = User::get();
return view('view', compact('rsltUsers'));
}
view.blade.php
<table class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th>Name</th>
<th>Last Name</th>
<th>Email</th>
<th>Phone</th>
<th>Address</th>
</tr>
</thead>
<tbody>
@foreach($rsltUsers as $rsltUser)
<td>{!! $rsltUser->name !!}</td>
<td>{!! $rsltUser->lastname !!}</td>
<td>{!! $rsltUser->email !!}</td>
<td>{!! $rsltUser->phone !!}</td>
<td>{!! $rsltUser->address !!}</td>
@endforeach
</tbody>
</table>