Laravel-datatables: Die exportOption 'Spalten' => ': sichtbar' funktionieren nicht

Erstellt am 21. Dez. 2017  ·  15Kommentare  ·  Quelle: yajra/laravel-datatables

Zusammenfassung des Problems oder der Funktionsanforderung


Beim Exportieren wird der Parameter:

'exportOptions' => [
                          'columns' => ':visible
                      ],

Arbeite nicht

Es sollte die Option aktivieren, nur die sichtbaren Spalten und nicht alle zu exportieren.

Systemdetails

  • Betriebssystem
    Debian keuchend
  • PHP-Version
    PHP 7.1.8
  • Laravel Version
    Laravel Framework 5.5.19
  • Laravel-Datatables Version
yajra/laravel-datatables-buttons      v3.1.0             Laravel DataTables Buttons Plugin.
yajra/laravel-datatables-html         v3.2.1             Laravel DataTables HTML builder plugin for Laravel 5.4+.
yajra/laravel-datatables-oracle       v8.3.2             jQuery DataTables API for Laravel 4|5
question

Hilfreichster Kommentar

In der Tat besteht eine Problemumgehung darin, der Funktion _buildParams einen Parameter hinzuzufügen
Und dann in der 'getColumns'-Methode auf der Serverseite.
Ich habe gerade eine PR dafür gemacht: https://github.com/yajra/laravel-datatables-buttons/pull/78

Alle 15 Kommentare

Können Sie mich bitte mit dem Beispiel datatables.net verknüpfen, wie dies gemacht wird? Diese Option ist für mich etwas neu. Vielen Dank!

Ich sehe, diese Demo dient zum Drucken auf der clientseitigen Implementierung. Auf der Serverseite wird dies leider nicht unterstützt.

@yajra glaubst du, dass diese Funktion in einer zukünftigen Version implementiert wird?

Es ist etwas seltsam, dass beim Drucken auf der Serverseite die Sichtbarkeit der Spalten berücksichtigt wird, beim Exportieren von XLS jedoch nicht. Gibt es einen Grund für das unterschiedliche Verhalten?

AFAIK, colvis ist nicht auch für die serverseitige Implementierung auf der JS-Seite verfügbar, daher ist die Implementierung von atm möglicherweise etwas schwierig.

Zum Exportieren können Sie einfach exportable auf false setzen. Hier sind einige Spaltenkonfigurationen, die Sie verwenden können:

  'orderable'      => false,
  'searchable'     => false,
  'exportable'     => false,
  'printable'      => true,
  'visible'        => true,

Gibt es schon eine Lösung für dieses Problem oder diese Funktion?

@yajra Ich denke, wir könnten eine Variable an _buildParams übergeben. Ich bin mir noch nicht sicher, wie ich das machen soll, aber ich bitte Sie, mir einen Hinweis zu geben :)

In der Tat besteht eine Problemumgehung darin, der Funktion _buildParams einen Parameter hinzuzufügen
Und dann in der 'getColumns'-Methode auf der Serverseite.
Ich habe gerade eine PR dafür gemacht: https://github.com/yajra/laravel-datatables-buttons/pull/78

Nun wissen wir, wie man den Parameter auf der Serverseite, auch bekannt als Backend, abfängt, aber wie man ihn in der eigentlichen dt ajax-Anfrage sendet. Was müssen wir bearbeiten?

Funktioniert nicht mit Druck! @FabienLucini , nur mit postcsv sichtbar. nicht einmal pdf!

In diesem POC habe ich die Änderungen für postExcel und postCsv vorgenommen
Sie können dies jedoch auch für PDF und Druck tun und dann Ihre Codeserver-Seite anpassen.
Prost

@FabienLucini Vielen Dank, du hast es wirklich geschafft. Du hast mir Stunden des Denkens und Brainstormings erspart.
Manchmal, vielleicht die ganze Zeit: D man fühlt sich niedergeschlagen, die Lösung liegt vor Ihren Augen und Sie können es nicht herausfinden. loooool

@yajra Lassen Sie uns diese Änderungen in den Zweig implementieren.

@FabienLucini @AmirTallap danke. Sie können den Druckteil auch für hacktobefest Punkte PR, falls Sie sich dem Leckerbissen anschließen.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

Mopster picture Mopster  ·  3Kommentare

hohuuhau picture hohuuhau  ·  3Kommentare

ahmadbadpey picture ahmadbadpey  ·  3Kommentare

josiahke picture josiahke  ·  3Kommentare

shadoWalker89 picture shadoWalker89  ·  3Kommentare