PlayFramework implémente complètement une APP (9)

黄舟
Libérer: 2016-12-23 16:46:46
original
1452 Les gens l'ont consulté

Ajouter des opérations d'ajout, de suppression, de modification et de vérification

1. Activer le module CRUD

Ajouter

# Importer le crud dans /conf/. module application.conf
module.crud=${play.path}/modules/crud

 

Ajouter

# Importer les routes CRUD dans /conf /routes
* /admin module:crud

Besoin de redémarrer le serveur et d'importer le module CRUD

2. contrôleur

/app/controllers

import play.*;import play.mvc.*;
public class Posts extends CRUD {
}public class Tags extends CRUD {
}classe publique Les utilisateurs étendent CRUD {
}classe publique Les commentaires étendent CRUD {
}

peuvent provoquer une erreur : CRUD ne peut pas être analysé en un type et le programme en cours d'exécution affichera une erreur

Solution :

Modifier conf/dependencies.yml

require :
- play
- play -> 🎜>

 

Exécuter Shell

> lire les dépendances


 

Le fichier modules/crud sera généré sous le projet, redémarrez simplement le projet. Cependant, il y aura toujours des erreurs de compilation, probablement parce que le projet crud n'est pas référencé

PlayFramework implémente complètement une APP (9)

Créer un contrôleur

contrôleurs de package; importer des modèles.Utilisateur;

@CRUD.For(User.class)public class AdminUsers étend CRUD {

}


4. Modifier le modèle et ajouter une vérification

Prendre l'utilisateur comme exemple

classe publique L'utilisateur étend le modèle {

@Email

@Required public String email;

@Required
@PassWord
public String password; public String fullname; public String isAdmin; public String toString() { return email;
}
}


Entrez http://localhost : 9000/admin/ Sélectionnez Ajouter un utilisateur pour accéder au formulaire d'utilisateur à tester

classe publique La publication étend le modèle {

@Public requis Titre de la chaîne;


@Required public Date de publication à ;

@Lob
@Required
@MaxSize(10000) public String content;

@Required
@ManyToOne public Utilisateur auteur ;

@ OneToMany(mappedBy = "post", cascade = CascadeType.ALL) public List commentaires ;

@ManyToMany(cascade = CascadeType.PERSIST) public Set tags;
}


public class Tag étend le modèle implémente Comparable {

@Required public String name;
}


classe publique Le commentaire étend le modèle {

@Required public String author;


@Required public Date de publication à;

@Lob
@Required
@MaxSize( 10000) public String content;

@ManyToOne
@Required public Post post;
}


5. Nom du label affiché sur la page Il est en minuscule, cohérent avec le nom du champ de la classe correspondante. Si vous souhaitez afficher en majuscule, vous pouvez modifier /conf/messages

title=. Titre

content=Content

postedAt=Publié à
author=Author
post=Article associé
tags=Tags set
name=Nom commun
email=Email
password=Mot de passe
fullname=Nom complet
isAdmin=L'utilisateur est admin


PlayFramework implémente complètement une APP (9) Ce qui précède est le contenu de PlayFramework pour implémenter complètement une application (9 ). Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !


Étiquettes associées:
app
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal