Giter Site home page Giter Site logo

Comments (4)

tjweir avatar tjweir commented on August 24, 2024

When using <lift:SiteOps.add form="post"> in the template shown below, the form is not being populated after a failed validation. With <lift:snippet type="SiteOps.add" form="post">, it is.

Model:

class Site extends LongKeyedMapper[Site] with IdPK {
def getSingleton = Site

object name extends MappedPoliteString(this, 256) {
override def validations = valMinLen(5, "Name must be at least 5 characters long") _ :: super.validations
}
object abbreviation extends MappedPoliteString(this, 128) {
override def validations = valMinLen(2, "Abbreviation must be at least 2 characters long") _ :: super.validations
}
}

object Site extends Site with LongKeyedMetaMapper[Site] {
override def dbTableName = "sites"
override def fieldOrder = List(name, abbreviation)
}
Template:

<lift:surround with="default" at="content">

New Site

<lift:SiteOps.add form="post">














Name: site:nameA site/site:name
Abbreviation / Short Name: site:abbreviationSite/site:abbreviation
site:submitSubmit/site:submit

/lift:SiteOps.add
/lift:surround
Snippet:

class SiteOps {
def add(form: NodeSeq) = {
val invokedAs = S.invokedAs
val site = Site.create

def newSite(form: NodeSeq): NodeSeq = {
  def saveMe(): Unit = {
    site.validate match {
      case Nil => site.save ; S.notice("Added " + site.name); S.redirectTo("/sites/")
      case xs => S.error(xs) ; S.mapSnippet(invokedAs, newSite)
    }
  }

  bind("site", form,
       "name" -> site.name.toForm,
       "abbreviation" -> site.abbreviation.toForm,
       "submit" -> SHtml.submit("New", saveMe))
}

newSite(form)

}
}

from framework.

dpp avatar dpp commented on August 24, 2024

Correct capturing of snippet names... closed by ed76af69ea2d04be956977ab6499bb1c6f060af7

from framework.

github-importer avatar github-importer commented on August 24, 2024

Imported from GitHub: http://github.com/dpp/liftweb/issues/17/find

from framework.

github-importer avatar github-importer commented on August 24, 2024

Imported from Assembla: http://www.assembla.com/spaces/liftweb/tickets/17

from framework.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.