Lifted,

Apps from gmail to Swik have demonstrated tagging as a pretty good
alternative metaphor to the standard notion of container. The real beauty of
this is that it can push all the way back to the data model. With that intro
i was wondering if anyone has already built a tagging-style app in lift that
they might care to share experiences about or even code.

Best wishes,

--greg

On Fri, Jan 30, 2009 at 12:44 PM, Derek Chen-Becker
<dchenbec...@gmail.com>wrote:

> Right, really the same mechanism in different guises. Still, the code that
> Sergey sent should work as far as I can tell...
>
> Derek
>
>
> On Fri, Jan 30, 2009 at 11:01 AM, Marius <marius.dan...@gmail.com> wrote:
>
>>
>> Yeah it does... in essence not very different from initial proposal
>> since internally redirectTo from stateful snippet does the same thing:
>> binds a function to be executed upon redirect.
>>
>> On Jan 30, 5:47 pm, Derek Chen-Becker <dchenbec...@gmail.com> wrote:
>> > Unless I'm missing something the stateful snippet should be working. The
>> > this.redirectTo call should be invoking the StatefulSnippet's
>> redirectTo,
>> > which should associate the same snippet instance with the new page. That
>> > should allow access to the same var. I just coded up a test app
>> (attached)
>> > and it works fine using very similar code.
>> >
>> > On Fri, Jan 30, 2009 at 12:36 AM, Marius <marius.dan...@gmail.com>
>> wrote:
>> >
>> > > On Jan 29, 10:54 pm, Sergey Andreev <andser...@gmail.com> wrote:
>> > > > Hi Liftlers,
>> > > > I am migrating one of my application to the lift as a way to learn
>> it and
>> > > i
>> > > > would like to ask a question.
>> >
>> > > > After submitting a form i would like to do a redirect and show the
>> > > submitted
>> > > > values on the other template. I have 2 templates and i use the same
>> > > snippet
>> > > > in both of them to render a dynamic content.
>> > > > As far as i understand there are 2 ways to make it work: saving
>> state
>> > > using
>> > > > SessionVars(which works for me) or extending StatefulSnippet and
>> calling
>> > > > this.redirectTo on it (looking at the sources it should register the
>> > > > stateful snippet in the session). I've tried extending
>> StatefulSnippet
>> > > but
>> > > > it doesn't work for me. A hashed value is added to the redirect url
>> which
>> > > > should map to the stateful snippet but the state is lost. I don't
>> > > understand
>> > > > what i am doing wrong.
>> >
>> > > > The simplified example of the code:
>> >
>> > > > class MySnippet extend StatefulSnippet {
>> > > >   private var myValues: List[String] = List()
>> >
>> > > >   val dispatch.. = {
>> > > >     case "save" => save_
>> > > >     case "show" => show _
>> > > >   }
>> >
>> > > >   def show = {
>> > > >     myValues.foreach(Log.info(_)) //nothing here
>> > > >   }
>> >
>> > > >   def save(xhtml: NodeSeq) : NodeSeq = {
>> > > >     def processForm = {
>> > > >       myValues.foreach(Log.info(_)) //submitted values are printed
>> out
>> > > >       this.redirectTo("/show")
>> > > >     }
>> >
>> > > Unless I'm missing something I do not this your values can be shown in
>> > > the new template. There is an overloaded S.redirectTo where you can
>> > > specify a function to be executed when the redirect is receives. Hence
>> > > here you can pass state. See
>> >
>> > > def redirectTo[T](where: String, func: () => Unit): T
>> >
>> > > In this function you could probably set some RequestVar holding your
>> > > needed state and when you snippet is rendered in the /show page you
>> > > just read the info from these RequestVar(s).
>> >
>> > > >     bind("render", xhtml,
>> > > >        ...... //render textboxes and register functions which add
>> values
>> > > to
>> > > > the myValues list
>> > > >        "submit" -> submit("Submit", processForm)
>> > > >   }
>> >
>> > > > }
>> >
>> > > > Thanks,
>> > > > Sergey
>> > > > P.S. The more i learn about Lift the more i like it. Thank you David
>> and
>> > > all
>> > > > lift committers!!!
>> >
>> >
>> >
>> >  teststateful.tgz
>> > 7KViewDownload
>>
>>
>
> >
>


-- 
L.G. Meredith
Managing Partner
Biosimilarity LLC
806 55th St NE
Seattle, WA 98105

+1 206.650.3740

http://biosimilarity.blogspot.com

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to