Wie man Squeryl mit dem Play! Rahmen?

8

Ich versuche zu lernen, wie man mit Play und Squeryl eine einfache Datenbank-App erstellt. Ich habe die Tasks-App über das Play-Lernprogramm erstellt, möchte aber das Modell / Schema so ändern, dass Squeryl anstelle von Anorm verwendet wird. Ich habe mir verschiedene Tutorials , Beispiele und Antworten , aber ich habe nicht wirklich herausgefunden, wie das geht.

Also, wenn Sie den Quellcode aus dem Play Tutorial (ScalaTodoList) erhalten; Wie gehe ich vor, damit es mit Squeryl funktioniert?

Genauer gesagt:

  • Wie implementiere ich die Methoden all() , create() und delete() in meinem Modell? (Ich möchte automatisch inkrementierende IDs für die Aufgaben verwenden)
  • Welcher Datenbankadapter verwendet wird, ist derzeit in Build.scala und Global.scala fest codiert (siehe unten). Wie kann ich es so machen, dass es automatisch H2 für Dev / Testing und Postgres auf Heroku verwendet, wie es für Anorm im Play Tutorial?
  • Wie stelle ich sicher, dass meine Tabellen automatisch erstellt werden?

Das habe ich bisher gemacht

Ich habe das ScalaTodoList-Tutorial zum Spielen abgeschlossen.

In project/Build.scala , object ApplicationBuild , habe ich die Abhängigkeiten hinzugefügt:

%Vor%

hat app/Global.scala hinzugefügt (aus der SO-Antwort , die oben erwähnt wurde, wurde nur der Adapter in H2 geändert):

%Vor%

in app/models/Task.scala Ich habe Importe hinzugefügt und die Anorm-Implementierungen in all() , create() und delete() entfernt. Der Controller aus dem Play-Lernprogramm erwartet, dass die all() -Methode List[Task] zurückgibt.

%Vor%

Der Rest der Dateien verbleibt am Ende des Play-Tutorials.

    
user1390113 11.05.2012, 22:54
quelle

2 Antworten

8

Hier ist ein Beispiel für Play 2-Projekt mit Squeryl:
Ссылка

    
James Ward 12.05.2012, 00:09
quelle
4

Das Buch "Play for Scala" (MEAP) enthält ein Kapitel zur Squeryl-Integration

Ссылка

    
Somatik 14.05.2012 08:57
quelle