Hola que tal tuve un pequeño problema con la actualización de items en laravel primero lo intente con poniendo el router en forma de put a mi method post y usando lo que esta en la documentación Link : https://laravel.com/docs/5.6/routing#form-method-spoofing sin embargo me sale un mensaje de la siguiente manera.
POST http://aperhu.localhost/clientes/empresas/2/edit 405 (Method Not Allowed)
y no se el porque cambie todos mis method a post y de igual manera me sigue saliendo el mismo problema aquí dejo el código se los agradecería si me dan una mano con esto.
Codigo del route
Route::post('/clientes/empresas/{parent_id}/membresia', 'Clientes\EmpresasController@membresia')->name('empresas.membresia');
Codigo del Ajax
function getUpdateData(type,url,msg,token,form){
$.ajax({
url: url,
type: type,
dataType: 'json',
headers: {'X-CSRF-TOKEN':token},
data: $(form).serialize(),
success: function (data) {
$response = data;
if ($response['status'] == 1) {
console.log($response)
location.reload();
} else {
alert('Hubo un error en la creación');
}
},
error : function(data) {
console.log(msg);
console.log($(form).serialize())
}
})
}
$('#UpdateMembresia').click(function(){
var url = $('#url').val();
var token = $("input[name*='token']").val();
getUpdateData('post',url,'Hubo un problema con la actualizacion de datos',token,'#update_membresia');
});
codigo de mi vista.
<form id="update_membresia" method='post'>
<input id="url" type="text" value="{{route('empresas.membresia', $empresa->emp_id)}}">
{!! csrf_field() !!}
{{ method_field('put') }}
<div class="form-group row">
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_estado">Estado de Membresia</label>
<select class="form-control underlined" id="m_estado" name="m_estado">
@forelse ($estados as $estado)
<option value="{{ $estado->ap_estados_id }}" {{($empresa->emp_categoria == $estado->ap_estados_id) ? 'selected' : '' }}>{{ $estado->ap_estados_nombre }}</option>
@empty
<option value="">No se han cargados datos</option>
@endforelse
</select>
</div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_categoria">Categoria</label>
<select class="form-control underlined" id="m_categoria" name="m_categoria">
@forelse ($categorias as $categoria)
<option value="{{ $categoria->cat_id }}" {{($empresa->emp_categoria == $categoria->cat_id) ? 'selected' : '' }}>{{ $categoria->cat_id }}</option>
@empty
<option value="">No se han cargados datos</option>
@endforelse
</select>
</div>
<div class="form-group col-md-12 col-lg-12 col-xl-4">
<label for="m_auspiciador">¿Es auspiciador?</label>
<div class="form-group">
<label for="m_auspiciador" id='lm_auspiciador'>Si</label>
<input type="radio" class="form-control col-xl-3" id="m_auspiciador" value="si" name="m_auspiciador" checked>
<label for="m_auspiciador" id='lm_auspiciador'>No</label>
<input type="radio" class="form-control col-xl-3" id="m_auspiciador" value="no" name="m_auspiciador"> </div>
</div>
</div>
<div class="form-group row">
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_ejecutivo">Ejecutivo Aperhu</label>
<select class="form-control underlined" id="m_ejecutivo" name="m_ejecutivo">
<option value="1">Persona 1</option>
<option value="2">Persona 2</option>
<option value="3">Persona 3</option>
<option value="4">Persona 4</option>
<option value="5">Persona 5</option>
</select>
</div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_celular">Celular</label>
<input type="text" class="form-control underlined" id="m_celular" name="m_celular" disabled> </div>
<div class="form-group col-md-12 col-lg-12 col-xl-4">
<label for="m_correo">Email</label>
<input type="text" class="form-control underlined" id="m_correo" name="m_correo" disabled> </div>
</div>
<h4>
<strong>Bolsas Free</strong>
</h4>
<br>
<div class="form-group row">
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_eventos">Eventos</label>
<input type="text" class="form-control underlined" id="m_eventos" name="m_eventos" value="{{$empresa->emp_eventos}}"> </div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_peventos">Participantes por evento</label>
<input type="text" class="form-control underlined" id="m_peventos" name="m_peventos" value="{{$empresa->emp_p_eventos}}"> </div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_salas">Salas</label>
<input type="text" class="form-control underlined" id="m_salas" name="m_salas" value="{{$empresa->emp_salas}}"> </div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_fechaunica">Fecha de Afiliación</label>
<input type="text" class="form-control underlined flatpickrdate date" id="m_fechaunica" name="m_fechaunica"> </div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_frenovacion">Renovación</label>
<input type="text" class="form-control underlined flatpickrdate date" id="m_frenovacion" name="m_frenovacion"> </div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<label for="m_upago">Último pago</label>
<input type="text" class="form-control underlined flatpickrdate date" id="m_upago" name="m_upago"> </div>
</div>
<div class="form-group col-md-12 col-lg-6 col-xl-4">
<button type="submit" class="btn btn-primary btn-lg btn-block" id="UpdateMembresia">Actualizar Información</button>
</div>
@endif
</form>
me sale está imagen.
(https://www.subeimagenes.com/img/capture-1902094.PNG)
gracias.
Todas tus peticiones son post, y en el ajax te olvitaste el method por lo que "{{ method_field('put') }}" no te hace nada