Import/export CSV des lieux
Export (GET lieux/export/csv) : - Colonnes : nom, code, type, lieu_parent (nom_long), latitude, longitude, note - BOM UTF-8, séparateur point-virgule Import (GET/POST lieux/import) : - Correspondance par nom de colonne (colonne nom obligatoire) - Résolution du parent par nom_long exact - Résolution du type par nom exact - Détection automatique du séparateur ; ou , - nom_long recalculé automatiquement par le modèle Boutons ↓ CSV, ↑ Importer CSV et + Nouveau lieu dans la liste des lieux. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -2,12 +2,22 @@
|
||||
<x-slot name="header">
|
||||
<div class="flex items-center justify-between">
|
||||
<h2 class="text-xl font-semibold text-gray-800 dark:text-gray-200">Lieux</h2>
|
||||
@can('create', App\Models\Lieu::class)
|
||||
<a href="{{ route('lieux.create') }}"
|
||||
class="px-4 py-2 bg-indigo-600 text-white text-sm rounded-md hover:bg-indigo-700">
|
||||
+ Nouveau lieu
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('lieux.export.csv') }}"
|
||||
class="px-4 py-2 bg-white dark:bg-gray-800 border border-gray-300 dark:border-gray-600 text-gray-700 dark:text-gray-300 text-sm rounded-md hover:bg-gray-50 dark:hover:bg-gray-700">
|
||||
↓ CSV
|
||||
</a>
|
||||
@endcan
|
||||
@can('create', App\Models\Lieu::class)
|
||||
<a href="{{ route('lieux.import.create') }}"
|
||||
class="px-4 py-2 bg-white dark:bg-gray-800 border border-gray-300 dark:border-gray-600 text-gray-700 dark:text-gray-300 text-sm rounded-md hover:bg-gray-50 dark:hover:bg-gray-700">
|
||||
↑ Importer CSV
|
||||
</a>
|
||||
<a href="{{ route('lieux.create') }}"
|
||||
class="px-4 py-2 bg-indigo-600 text-white text-sm rounded-md hover:bg-indigo-700">
|
||||
+ Nouveau lieu
|
||||
</a>
|
||||
@endcan
|
||||
</div>
|
||||
</div>
|
||||
</x-slot>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user