Book Image

Lift Application Development Cookbook

By : Gilberto Tadeu Garcia Jun
Book Image

Lift Application Development Cookbook

By: Gilberto Tadeu Garcia Jun

Overview of this book

Developing secure web applications is one of the most important tasks developers have to deal with. With Lift, it is easy to create solid and formidable web applications as it is the most secure web framework available today. The View-First approach and being able to handle things as purely data transformation, makes working with Lift an exciting task. "Lift Application Development Cookbook" teaches you how to build web applications using this amazing framework. The book moves gradually, starting with the basics (starting a new project, submitting a form, and so on) before covering more advanced topics such as building a REST API and integrating your application with other technologies and applications. "Lift Application Development Cookbook" takes you on a journey of creating secure web applications. Step-by-step instructions help you understand how things work and how various elements relate to each other. You'll learn different ways to process a form, build dynamic HTML pages, and create an API using REST. You'll also learn how to work with relational and NoSQL databases and how to integrate your application with other technologies as well as with third-part applications such as Gmail and Facebook. By the end of the book, you will be able to understand how Lift works and be able to build web applications using this amazing and exciting framework.
Table of Contents (15 chapters)
Lift Application Development Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Mapping embedded objects


When working with document-based databases such as MongoDB, instead of using a one-to-many relationship to link to classes that represent two tables in the database—such as contacts and phones—we can map both objects Contact and Phone. Then, instead of storing them in two different collections, we embed the phone object into the contact object. In the following recipe, we will learn how to embed one object into another.

Getting ready

We'll keep evolving the project from the previous recipe.

How to do it...

Carry out the following steps:

  1. Create a new file named Phone.scala in src/main/scala/code/model with the following code:

    package code.model
    
    import net.liftweb.mongodb.record._
    import net.liftweb.record.field.StringField
    
    class Phone extends BsonRecord[Phone] {
      def meta = Phone
    
      val number = new StringField(this, 15)
    }
    
    object Phone extends Phone with BsonMetaRecord[Phone]
  2. Change the Contact class by adding the numbers object as follows:

    class Contact extends MongoRecord...