Problema entre Laravel, rutas e interfaz de usuario
Publicado por Stefano (19 intervenciones) el 24/08/2020 01:48:21
Hola gente LWP! Queria consultarles algo que no he visto en Google de como resolverlo.
Tengo que mostrar algunos datos en un select y al lado de ellos un boton de editar y otro de eliminar dicho dato.
Demos como ejemplo esta ruta de borrado:
En la cual muestro los datos en un select de esta forma
Como haria en este caso un form ya que dentro de la etiqueta select no puede ir.
He hecho un truco con jquery y un div pero me parece bastante sucio:
Alguien se le ocurre otra forma sin tener que cambiar la ruta a post? Tampoco quisiera recorrer la colección dos veces. Usando Ajax pasaria lo mismo ya que no conozco el id del dato. y no podria poner una URL.
Quisiera obtener mi ruta sin el parametro {$id} pero no he encontrado forma de hacerlo.
Muchas gracias por leer, espero haber sido claro. Si existen errores de codigo no den importancia, lo mas importante es la idea y si puede haber una solucion mas facil.
Saludos,
Stefano
Tengo que mostrar algunos datos en un select y al lado de ellos un boton de editar y otro de eliminar dicho dato.
Demos como ejemplo esta ruta de borrado:
1
Route::delete('data/{id}', 'DataController@destroy')->name('data/destroy');
En la cual muestro los datos en un select de esta forma
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<script>
function destroy() {
var data = $('#data').val();
var form = document.getElementById('destroy_data_'+data);
form.submit();
}
</script>
<select class="form-control input-sm col-md-6" id="data">
<option value=""> {{ trans('forms.select_option') }}</option>
@foreach ($datas as $data)
<option value="{{ $data->id }}"> {{ $data->name}}</option>
@endforeach
<button type="button" class="btn btn-info btn-md" onclick="return destroy()">
<span class="fas fa-trash"></span>
</button>
</select>
Como haria en este caso un form ya que dentro de la etiqueta select no puede ir.
1
2
3
4
<form method="post" action="{{ route('data/destroy', [$data->id] ) }}" id="destroy_data_{{ $data->id }}">
@csrf
@method('delete')
</form>
He hecho un truco con jquery y un div pero me parece bastante sucio:
1
<script> $("#destroy_data").html($("#destroy_data").html()+'<form id="destroy_data_{{ $data->id }}"> </form>'); </script>
Alguien se le ocurre otra forma sin tener que cambiar la ruta a post? Tampoco quisiera recorrer la colección dos veces. Usando Ajax pasaria lo mismo ya que no conozco el id del dato. y no podria poner una URL.
Quisiera obtener mi ruta sin el parametro {$id} pero no he encontrado forma de hacerlo.
Muchas gracias por leer, espero haber sido claro. Si existen errores de codigo no den importancia, lo mas importante es la idea y si puede haber una solucion mas facil.
Saludos,
Stefano
Valora esta pregunta


0