Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 59c8afd6

Von Moritz Bunkus vor mehr als 5 Jahren hinzugefügt

  • ID 59c8afd6f264246c0e5819ac02da0dd0bb10ee4d
  • Vorgänger da2df61a
  • Nachfolger 72b10cee

Hintergrundjobs: einmalige Jobausführung: Daten übergeben können

Entweder, man übergibt `data` als Parameter in
URI-Hash-Form (z.B. '&data.var=value'), als normaler YAML-encodierter
String, so wie er auch in der Datenbank
steht (z.B. '&data=---%0Avar%3Dvalue'), oder man übergibt
JSON-encodierte Daten in
`json_data` (z.B. '&json_data=%7B%22var%22%3A%22value%22%7D`).

Unterschiede anzeigen:

SL/Controller/BackgroundJob.pm
131 131
    my $package = "SL::BackgroundJob::" . $::form->{class};
132 132

  
133 133
    eval "require $package" or die $@;
134
    $result = $package->new->run(SL::DB::BackgroundJob->new);
134
    my $job = SL::DB::BackgroundJob->new(data => $::form->{data});
135
    $job->data(decode_json($::form->{json_data})) if $::form->{json_data};
136
    $result = $package->new->run($job);
135 137

  
136 138
    1;
137 139
  };

Auch abrufbar als: Unified diff