Sorry but still not quite at the point of understanding, sorry!

Where does def tag_widget(self,value,tags=[]):(etc) go? What file does
it go into? models.py? (this is where i put it but it really hasn't
helped things...)


On Feb 8, 12:35 pm, mdipierro <mdipie...@cs.depaul.edu> wrote:
> IS_IN_DB(....,multiple=True)
>
> sorry still undocumented is a portable (on GAE) way to do many to
> many. it does not use an intermediate table. It stores all keys in the
> field like in |3|5|7| etc etc.
>
> It is used for example to select tutorials in the Pycon registration
> page (using the jquery multiselect plugin).
>
> Using db.table.field.widget you can change the way any field is
> rendered by SQLFORM. I am using the T2 tag_widget function.
>
> Massimo
>
> On Feb 7, 7:04 pm, mickgardner <mickgard...@gmail.com> wrote:
>
> > Thanks so much for the response.
> > Could you explain what you're doing there a little ?
> > I've had a go at using that, for example the many to one table but
> > unsure how / where the widget function works or is implemented?
>
> > thanks
> > Michael
>
> > On Feb 8, 2:09 am, mdipierro <mdipie...@cs.depaul.edu> wrote:
>
> > > db.define_table('tag',dbField('name'))
>
> > > db.define_table('taggable,db.Field('description'),db.Field
> > > ('tags','text'))
>
> > > db.taggable.tags.requires=IS_IN_DB(db,'tag.id','%(name)
> > > s',multiple=True)
>
> > > Optional:
>
> > > def tag_widget(self,value,tags=[]):
> > >         script=SCRIPT
> > > ("""
> > >         function web2py_tag(self,other,tag)
> > > {
> > >            var o=document.getElementById
> > > (other)
> > >            if(self.className=='tag_on')
> > > {
> > >              self.setAttribute
> > > ('class','tag_off');
> > >              o.value=o.value.replace('|'+tag
> > > +'|','|');
> > >            } else if(self.className=='tag_off')
> > > {
> > >              self.setAttribute
> > > ('class','tag_on');
> > >              o.value=o.value+'|'+tag
> > > +'|';
> > >            }
> > >         }""")
> > >         id=self._tablename+'_'+self.name
> > >         def onclick(x): return "web2py_tag(this,'%s','%s');"%(id,x)
> > >         if tags and not isinstance(tags[0],(list,tuple)): tags=[tags]
> > >         buttons=[DIV(_class='tag_row',
> > >                  *[SPAN(A(x,_class='tag_on' if value and '|%s|'%x \
> > >                  in value else 'tag_off',_onclick=onclick(x)),\
> > >                  _class="tag_col") for x in tag_line]) for tag_line in
> > > tags]
> > >         return DIV(script,INPUT(_type='hidden',_id=id,_name=self.name,
> > >                                 _value=value),*buttons)
>
> > > db.tagging.tags.widget=tag_widget
>
> > > Massimo
>
> > > On Feb 7, 4:44 am, mickgardner <mickgard...@gmail.com> wrote:
>
> > > > Hi,
>
> > > > i've been trying all day to work out how to do this and cannot get it
> > > > working completely the way I want it to.
>
> > > > I'm building a blog and want to implement tagging.
> > > > The tagging would work as such:
>
> > > > There would be a text, tagging field that would accept multiple comma
> > > > or space separated 'tags'.
>
> > > > each word or tag would then be listed with each post,
> > > > each word would be a hyperlinked so that when its clicked on it would
> > > > list all articles that have that tag on it.
>
> > > > Now I can get this working, if I have one word only. When I use spaces
> > > > and or multiple words / tags the system rightfully treats it as one
> > > > tag.
>
> > > > I'm trying to work out how to accept multiple tags in one field and
> > > > have them treated as multiple tags not one giant tag with spaces.
> > > > I was thinking that perhaps I could use some sort of custom validator
> > > > or something behind the form that split the words up so that they were
> > > > treated separately but cannot figure it.
>
> > > > Any assistance / advice would be welcome!
>
> > > > thanks
> > > > Michael Gardner
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to