2011-05-13 5 views
1

Je suis novice dans le développement web mais j'ai beaucoup d'expérience avec Scala et j'essaie de démarrer avec Lift. L'une des premières étapes semble être la mise en place d'une connexion à une base de données afin qu'un site puisse stocker des informations utilisateur mais je n'arrive pas à comprendre comment faire. Beaucoup de sources que j'ai trouvées s'attendent à certaines connaissances préalables que je ne semble pas avoir. D'après ce que j'ai lu, MongoDB semble être la voie à suivre. Étant donné que je prévois de stocker diverses informations sur l'utilisateur, du texte et beaucoup d'images, cette conclusion est-elle correcte?Quelles sont les étapes exactes nécessaires pour configurer MongoDB avec un modèle sbt Scala Lift vierge?

Quelles sont les étapes exactes nécessaires pour configurer une connexion de base de données MongoDB et configurer une classe d'utilisateurs pour l'utiliser? Je pars d'un template "lift_basic" utilisant Lift 2.3 et Scala 2.8.1. Jusqu'ici j'ai essayé de modifier le fichier LiftProject pour inclure les dépendances lift-mongodb, écrit une fonction mongoInit pour le fichier Boot.scala basé sur l'entrée wiki de Lift Mongo, et essayé d'utiliser la version Mongo de la classe MetaMegaProtoUser mentionné dans ce fil de la liste de diffusion. Cela ne semble pas avoir fonctionné et j'obtiens un "Identifiant de connexion d'identificateur de connexion (ascenseur) mais n'ai pas pu trouver une source de données JNDI avec l'ascenseur de nom ou un gestionnaire de connexion ascendant avec le nom correct" erreur. Cela semble provenir de la ligne

Schemifier.schemify(true, Schemifier.infoF _, User) 

Mais je ne sais pas ce que cette ligne signifie/t donc je suis perplexe.

Répondre

0

Je pense généralement que vous n'avez pas besoin d'un schemifier pour MongoDb. (Je pense qu'il n'y a pas de source de données JNDI pour MongoDB, donc la gestion des connexions est un peu découplée de tout ce qui concerne l'API Java, donc tout est un peu différent d'une base de données SQL.)

seulement commencé avec lift, l'utilisation de la base de données h2 par défaut est plus facile à gérer car la plupart des exemples utilisent simplement la valeur par défaut; mais vous pouvez également vouloir vérifier https://github.com/regadas/lift-mongodb-sample qui vous donne une configuration de base de MongoDB. (Je ne sais pas si cela fonctionne, cependant.)

+0

Merci, ce modèle git ressemble à ce que je cherche. Je reçois toujours la même exception quand je l'exécute. Il est passé au navigateur à la demande de la page au lieu de quand je lance la jetée maintenant qui est un changement. Y a-t-il quelque chose que je dois faire à Mongo pour faire ce travail? J'ai une installation Ubuntu par défaut, qui semble avoir démarré le serveur en mode local fonctionnant sur le port 27017 par défaut. – toddaaro

+0

Je pensais avoir fait ressembler le mien à ce modèle, mais j'ai dû manquer quelque chose. Un clone git direct fonctionne bien. Merci pour le lien. – toddaaro

Questions connexes