Issue
I am beginner in Laravel framework.I have a CategoryController
and allCategory.blade.php
view.I have a welcome.blade.php
view.Now i want insert all categories value in the welcome.blade.php
view.When i tried its show Undefined variable: $category
allCategory.blade.php :
@if(count($categories))
<table id="example2" class="table table-bordered table-hover" width="65%">
<thead>
<tr>
<th># Index</th>
<th>Category Name</th>
<th>Action</th>
</tr>
</thead>
<tbody>
@foreach($categories as $category)
<tr>
<td>{{$category->sortInd}}</td>
<td>{{$category->categoryName}}</td>
<td><a class="btn btn-info badge bg-light-blue" href="{{route('editCategory',$category->id)}}">Edit</a> | <a class="btn btn-danger badge bg-red" href="{{route('deleteCategory',$category->id)}}">Delete</a></td>
</tr>
@endforeach
</tbody>
</table>
{{$categories->links()}}
@endif
CategoryController:
public function index()
{
$categories = Category::where('id', '>=', 1)->paginate(10);
return view('jobs.allCategory', ['categories' => $categories]);
}
I want this kind of solution. But it doesn't work.
Now i want to show category value same as allCategory.blade.php
.How can pass the variable value from one view to another view?
N.B: If you needed any file please let me know.
Solution
Ok I have got a solution with compact()
function. In my WelcomeController
I just query all data of category and use compact()
function. compact()
function create an array from variables and their values. So I can query different table data and use compact()
so that I can view all data in welcome
blade with foreach()
loop. Something like below:
WelcomeController :
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Category;
use App\Job;
use App\Http\Requests;
class WelcomeController extends Controller
{
public function index()
{
$jobs = Job::all();
$categories = Category::all();
return view("welcome",compact('categories','jobs'));
}
Retrieve the value in welcome.blade.php :
@foreach($categories as $category)
<ul class="trends">
<li><a href="#">{{ $category->categoryName}} <span class="item-numbers">(2,342)</span></a></li>
</ul>
@endforeach
Hope it will help someone.
Answered By - Chonchol Mahmud
0 Comments:
Post a Comment
Note: Only a member of this blog may post a comment.