Ich möchte Formularsatz speichern, wenn amount
gleich 0
entspricht und aktualisieren Sie es, wenn amount > 0
. Aber ich weiß nicht, wie man das mit Playframework macht. Hier ist mein Code:Playframework: wie zu entscheiden, ob einfügen oder aktualisieren basierend auf einem Feld
Controller-Methode:
public static Result add() {
Form<Store> taskData = form(Store.class);
Form<Store> tasks = taskData.bindFromRequest();
Store.recharge(tasks.get());
return ok ("Stored successfully");
}
Modelle:
@Entity
@Table(name = "store")
public class Store extends Model {
@Id
public Long id;
public int amount;
public static Finder<Long, Store> find = new Finder(Long.class, Store.class);
public static List<Store> all() {
return find.all();
}
public static Store findById(Long id) {return (find.ref(id));}
public static void add (Store data) {
data.save();
}
}
Kannst du nicht einfach die 'Store' Modells Menge überprüfen und wenn es> 0, dann rufen Sie einfach' Daten. update() 'anstelle von' save() '? Vielleicht können Sie noch etwas klären. – BatteryAcid
Danke, um meine Frage Claire zu stellen. Ich habe das gemacht, aber funktioniert nicht für mich: 'String Betrag = taskData.bindFromRequest(). Feld (" Betrag "). Value(); int am = Integer.parseInt (Menge); if (am == 0) { Store.recharge (tasks.get()); Rückgabe ok ("erfolgreich gespeichert"); } sonst wenn (am> 0) { Store.update (tasks.get()); Rückkehr ok ("thaks für aktualisiert"); } ' –