On Monday, August 10, 2015 at 7:32:31 PM UTC-7, Yebach wrote:
>
> Thank you for detailed answer
>
> I am trying to implement this in SQLFORM? Looks like multiple option is 
> not avaliable, the field is presented as text field in the form
>
> BTW - why web2py does not add new field to a table. If I set migrate to 
> True I get an error "table already exists" if it is set to false new fields 
> were not created so I had to create them manually ??
>
> Thank you
>

Which database are you interfacing to?

/dps
 

>
> 2015-08-07 19:10 GMT+08:00 Lisandro <rostagno...@gmail.com <javascript:>>:
>
>> Hi there.
>> Web2py has some cool field types called "list:string", "list:integer" and 
>> "list:reference table". Check them here:
>>
>> http://www.web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#Field-types
>>
>> In your case, you could avoid the creation of the third table with 
>> *list:reference 
>> table*, for example, in your db.py:
>>
>> db.define_table('skill', Field('name'))
>>
>> db.define_table('worker',\
>>     Field('name'),\
>>     Field('skills','list:reference skill'))
>>
>>
>> Then you can do things like:
>>
>> skill_1 = db.skill.insert(name='coding in python')
>> skill_2 = db.skill.insert(name='making a cake')
>> skill_3 = db.skill.insert(name='writing a song')
>>
>> db.worker.insert(name='John', skills=[skill_1, skill_2])
>> db.worker.insert(name='Paul', skills=[skill_3])
>> db.worker.insert(name='Richard', skills=[skill_2, skill_3])
>>
>> # search which workers have skill_2:
>> have_skill_3 = db(db.worker.skills.contains(skill_2)).select()
>>
>>
>> The list:reference field will be rendered as a select with multiple=True.
>> You can always write your own widget to use other stuff, like checkboxes.
>>
>> Look for "list:reference" in this group, you will lots of posts about it. 
>> Hope it helps!
>>
>>
>>
>> El jueves, 6 de agosto de 2015, 22:51:53 (UTC-3), Yebach escribió:
>>>
>>> Hello
>>>
>>> How to solve the problem of one to many relationship:
>>>
>>> Lets say I have a worker that has multiple skills. How to set up SQLFORM 
>>> to add as many skills to the worker as possible.
>>>
>>> So skills in one table workers in another.I guess a third table will be 
>>> needed
>>>
>>> Thank you
>>>
>>> best regards
>>>
>> -- 
>> Resources:
>> - http://web2py.com
>> - http://web2py.com/book (Documentation)
>> - http://github.com/web2py/web2py (Source code)
>> - https://code.google.com/p/web2py/issues/list (Report Issues)
>> --- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "web2py-users" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/web2py/HjhQdAZWFWY/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> web2py+un...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
>
> -- 
> Lep pozdrav 
>
> Vid Ogris
>
>
>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to