I am using ajax to retrieve data from my database into a select box. When i select a group, it should displays it contents respectively.
When i try to display the form, it says Undefined variable: packages but i have return package in the view in my controller.
Is there anything i am missing out ?
PackageController
public function create()
{
$groups = Group::all();
$selectedGroup = $group->pluck('id')->toArray();
return view('group.detail',compact('selectedGroup','groups'));
}
public function getpackages($id)
{
$groups = Group::findOrFail($id);
$packages= $groups->packages;
return view('group.detail',compact('packages'));
return $id;
}
group.details.blade.php
<div class="input-group control-group after-add-more">
<div class="form-group">
<!-- <label for="select" class="col-lg-2 control-label">Select Item</label> -->
<div class="col-lg-10">
<select class="form-control" id="group" name="group[]" mulitple>
@foreach($groups as $group)
<option value="{!! $group->id !!}" @if(in_array($group->id, $selectedGroup)) selected="selected" @endif >
{!! $group->name!!}
</option>
@endforeach
</select>
</div>
</div>
<div class="form-group">
<!-- <label for="select" class="col-lg-2 control-label">Select Item</label> -->
<div class="col-lg-10">
<select class="form-control" id="remove_select" name="packages" mulitple>
@foreach($packages as $package)
<option value="{!! $package->id !!}" >
{!! $package->name!!}
</option>
@endforeach
</select>
</div>
</div>
<script>
$('#category').change(function(e)
{
e.preventDefault();
$y = $(this).val();
alert($y);
$.ajax
({
url: '{{ url('getpackages') }}/'+$y,
type: 'GET',
dataType: 'json',
success: function(data)
{
console.log(data);
}
});
});
</script>