Ich möchte die Ausführung für jede relevante Gruppe automatisieren und den Gruppen die Ergebnisse einmal pro Woche zusenden.
Aber um Himmels willen, ich kann die Syntax für den Parameter nicht herausfinden. Hier ist, was mir in einer brandneuen Automatisierung dafür präsentiert wird:
Ich habe verschiedene Variationen ausprobiert. Wenn ich keine Fehlermeldung von meinen Versuchen erhalte (in den Fehlerprotokollen gefunden), erhalte ich scheinbar gar nichts.
Wenn ich eine Abfrage ohne Parameter verwende, läuft sie wie geschmiert. Wie lasse ich sie für Abfragen funktionieren, die Parameter benötigen?
In Ihrem Beispiel, nehmen wir an, Sie möchten die Gruppen Moderatoren und Administratoren überprüfen, Sie sollten haben:
Schlüssel: group_name
Wert: moderators,admins
Technische Details zur Hilfe, nicht beachten.
Ich habe versucht, den Code zu verstehen, und ich glaube, hier gibt es ein Problem:
Die Parameter werden transformiert, bevor run_query aufgerufen wird.
Nehmen wir an, Sie haben diesen ursprünglichen Wert: [{\"key\":\"group_names\",\"value\":\"admins,moderators\"}]
Der transformierte Wert wird sein: {{\"key\"=>\"group_names\", \"value\"=>\"admins,moderators\"}=>nil}
Allerdings scheint cast_params Folgendes zu erwarten: {\"group_names\"=>\"admins,moderators\"}
Ich habe versucht, diese naive Änderung zu testen, und die Parameter funktionierten.
def self.params_to_hash(query_params)
params = JSON.parse(query_params)
params_hash = {}
params.each do |param|
key = param["key"]
value = param["value"]
params_hash[key] = value
end
params_hash
end
Ich schaue mir das gerade an. Wenn ich den Originalcode lese, habe ich den Eindruck, dass er erwartet, dass die Parameter ein Array von Arrays sind, daher bin ich etwas vorsichtig, die vorhandenen Dinge einfach wegzuwerfen. Ich werde versuchen herauszufinden, wann das passieren könnte.
Hier gab es tatsächlich einen Fehler, und dank der Untersuchung von @Arkshine war er relativ einfach zu beheben:
Dies wurde bereits zusammengeführt, sodass Sie nach dem Deployment Ihrer Website keine Probleme mehr haben sollten, @ganncamp.
Wenn ich Sie richtig verstehe, wünschen Sie eine Automatisierung, die eine 1:1-Zuordnung zwischen einer Gruppe und ihrem Bericht darstellt? (D. h. group_a erhält einen Bericht mit group_a-Daten usw.)
Es gibt (derzeit) keine Verbindung zwischen der Empfängerliste und den Berichtsparametern. Um dies zu erreichen, müssten Sie eine Automatisierung pro Gruppe einrichten. In diesem Fall möchten Sie den Parameter möglicherweise in group_id ändern.
Das scheint in der Tat praktisch zu sein, besonders für Websites mit sehr vielen Gruppen. Ich werde die Anfrage notieren, kann aber nicht sagen, wann wir uns darum kümmern werden.