return **dict(form=form)? I am sorry I know my questions are noob, but I
can't tell you how much I appreciate your help. I've spent two days on this
problem.


On Fri, May 2, 2014 at 4:11 PM, Richard Vézina
<ml.richard.vez...@gmail.com>wrote:

> **dict(...)
>
>
> On Fri, May 2, 2014 at 4:10 PM, Austin Taylor <atayloru...@gmail.com>wrote:
>
>> I will definitely upgrade in the upcoming months... but for now I"m stuck
>> with 2.6. Your dict comprehension worked, but now I'm getting an error when
>> I click bthe button saying there are too many values to unpack. I'm
>> guessing this is because I'm using 2.6 again and its something to do with
>> my function:
>>
>> def transition_form():
>>    for f, v in rqeuest.vars:
>>      db.table[f].default = v
>> form = SQLFORM(db.table)
>> return dict(form=form)
>>
>>
>> On Fri, May 2, 2014 at 4:03 PM, Richard Vézina <
>> ml.richard.vez...@gmail.com> wrote:
>>
>>>  Try with dict() contructor in one of my last email if you want to stay
>>> in 2.6
>>>
>>> Richard
>>>
>>>
>>> On Fri, May 2, 2014 at 4:02 PM, Richard Vézina <
>>> ml.richard.vez...@gmail.com> wrote:
>>>
>>>> python2.7 web2py ...
>>>>
>>>>
>>>> On Fri, May 2, 2014 at 4:01 PM, LoveWeb2py <atayloru...@gmail.com>wrote:
>>>>
>>>>> Is there a way to force web2py to use 2.7 instead of 2.6? I thought it
>>>>> was using 2.7. Thank you for being so patient.
>>>>>
>>>>>
>>>>> On Friday, May 2, 2014 3:59:06 PM UTC-4, Richard wrote:
>>>>>
>>>>>> Upgrade to 2.9.5 web2py 2.3 is very old... Consider using 2.7 for
>>>>>> python...
>>>>>>
>>>>>> http://stackoverflow.com/questions/1747817/python-
>>>>>> create-a-dictionary-with-list-comprehension
>>>>>>
>>>>>> You can adapt
>>>>>>
>>>>>> Richard
>>>>>>
>>>>>>
>>>>>> On Fri, May 2, 2014 at 3:44 PM, LoveWeb2py <atayl...@gmail.com>wrote:
>>>>>>
>>>>>>> Okay... I think I see the issue. My web2py is running Python 2.6 and
>>>>>>> my Interpreter is 2.7. dictionary comprehension changed between those
>>>>>>> versions. I'm going to try and construct a dict comprehension for 2.6 
>>>>>>> and
>>>>>>> try it again.
>>>>>>>
>>>>>>>
>>>>>>> On Friday, May 2, 2014 3:40:53 PM UTC-4, LoveWeb2py wrote:
>>>>>>>>
>>>>>>>> Okay quick update:
>>>>>>>>
>>>>>>>> I loaded a row into python to test the comprehension.
>>>>>>>> row = db(db.table.id>0).select().first()
>>>>>>>>
>>>>>>>> {f: row[f] for f in db.table.fields} prints out the list fine and
>>>>>>>> its exactly how I"d like to prepopulate my field on the transition 
>>>>>>>> form.
>>>>>>>> Thank you for getting me this far.
>>>>>>>>
>>>>>>>> However when I try to type vars={f: row[f] for f in
>>>>>>>> db.table.fields})))] I get invalid syntax and the ^ points to the for 
>>>>>>>> in
>>>>>>>> the dict comprehension. When I use regular python it works fine. Any
>>>>>>>> thoughts?
>>>>>>>>
>>>>>>>> On Friday, May 2, 2014 3:16:24 PM UTC-4, LoveWeb2py wrote:
>>>>>>>>>
>>>>>>>>> I just realized I might be running into problems because I'm using
>>>>>>>>> 2.3. I haven't upgraded because the new web2py threw my css off. It 
>>>>>>>>> looks
>>>>>>>>> like you're referencing the virtual fields?
>>>>>>>>>
>>>>>>>>> http://web2py.com/books/default/chapter/29/06/the-database-
>>>>>>>>> abstraction-layer#Old-style-virtual-fields
>>>>>>>>>
>>>>>>>>> If you think I should upgrade i'll make the change, but if I could
>>>>>>>>> stick with 2.3 I would prefer to do so
>>>>>>>>>
>>>>>>>>> On Friday, May 2, 2014 3:10:15 PM UTC-4, LoveWeb2py wrote:
>>>>>>>>>>
>>>>>>>>>> for this part: {f: row[f] for f in db.table.fields}
>>>>>>>>>>
>>>>>>>>>> what do I put for fields... could I just leave it as fields?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Friday, May 2, 2014 11:16:09 AM UTC-4, Richard wrote:
>>>>>>>>>>>
>>>>>>>>>>> Yes, so you want to pas by a transitionnal form with the data
>>>>>>>>>>> preset base on the copied record values, where you can make the 
>>>>>>>>>>> change you
>>>>>>>>>>> want before submit the form. So if you have a grid where you can 
>>>>>>>>>>> select the
>>>>>>>>>>> record to copy with the icon you want that link to the 
>>>>>>>>>>> transitionnal form,
>>>>>>>>>>> you just have to pass the value of the record to the form throught 
>>>>>>>>>>> out URL
>>>>>>>>>>> vars... You can iter like that :
>>>>>>>>>>>
>>>>>>>>>>> SQLFORM.grid(..., links=[dict(header='', body=lambda row:
>>>>>>>>>>> A(I(_class='icon some_icon'), _href=URL('transitionnal_form',
>>>>>>>>>>> vars={f: row[f] for f in db.table.fields}))))],)
>>>>>>>>>>>
>>>>>>>>>>> This part :
>>>>>>>>>>> {f: row[f] for f in db.table.fields}
>>>>>>>>>>>
>>>>>>>>>>> Is a dict comprehension...
>>>>>>>>>>>
>>>>>>>>>>> Then in transitionnal form controller you do something like that
>>>>>>>>>>> :
>>>>>>>>>>>
>>>>>>>>>>> def transition_form():
>>>>>>>>>>>     for f, v in request.vars:
>>>>>>>>>>>         db.table[f].default = v
>>>>>>>>>>>     form = SQLFORM(db.table, ...)
>>>>>>>>>>>     ...
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Richard
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Fri, May 2, 2014 at 10:18 AM, LoveWeb2py 
>>>>>>>>>>> <atayl...@gmail.com>wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Basically... right now I have a magnifying glass, the pencil,
>>>>>>>>>>>> and a trash can for my records. I want to add a plus next to each 
>>>>>>>>>>>> one of my
>>>>>>>>>>>> records and when I click on the plus it copies that records values 
>>>>>>>>>>>> into a
>>>>>>>>>>>> new record and creates a new ID.
>>>>>>>>>>>>
>>>>>>>>>>>> I can then modify some of the values in the record or keep it
>>>>>>>>>>>> the same if I choose. Does that make sense?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Friday, May 2, 2014 9:57:23 AM UTC-4, LoveWeb2py wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> This is very helpful, Richard. I have about 20 fields so I
>>>>>>>>>>>>> think I would have to iterate through the fields and insert the
>>>>>>>>>>>>> request.vars to the database.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Ahhh after looking at your code it looks like that could would
>>>>>>>>>>>>> write a record from one table to another. In this case I just 
>>>>>>>>>>>>> want to copy
>>>>>>>>>>>>> a record from the same table and insert the record as a new ID.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I think the answer will be a combination of your and Oli's
>>>>>>>>>>>>> approach.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Friday, May 2, 2014 9:39:46 AM UTC-4, Richard wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> What do you mean?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> You can redirect (A('Link', _href=URL(controler, function,
>>>>>>>>>>>>>> vars=dict(pass_your_record_vars_here=record_vars1, ...))) to
>>>>>>>>>>>>>> a function that do what I wrote above... Just pass record value 
>>>>>>>>>>>>>> throught
>>>>>>>>>>>>>> vars then request.vars.field1 request.vars.field2 and assign 
>>>>>>>>>>>>>> .default=
>>>>>>>>>>>>>> request.vars.field1
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Richard
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Fri, May 2, 2014 at 9:33 AM, LoveWeb2py <
>>>>>>>>>>>>>> atayl...@gmail.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Richard,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> How do I assign this to a button though?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Friday, May 2, 2014 9:30:21 AM UTC-4, Richard wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> keepvalues
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> or
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> row = db(...).select(db.table.record).first()
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> db.other_table.field1.default = row.field
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> form = SQLFORM(db.table, ...)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Richard
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Fri, May 2, 2014 at 9:07 AM, Oli <oliver...@gmx.net>wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I hope this help.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> def copy_and_edit():
>>>>>>>>>>>>>>>>>     """
>>>>>>>>>>>>>>>>>     copy_and_edit
>>>>>>>>>>>>>>>>>     """
>>>>>>>>>>>>>>>>>     record = db.t_disciplin(request.args[0])
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>     vals = {}
>>>>>>>>>>>>>>>>>     for k,v in record.items():
>>>>>>>>>>>>>>>>>         if k in db.t_disciplin.fields:
>>>>>>>>>>>>>>>>>             if k == 'f_title':
>>>>>>>>>>>>>>>>>                 v = v + "_copy"
>>>>>>>>>>>>>>>>>                 recname = str(v) # Needed to redirect the
>>>>>>>>>>>>>>>>> page to the right record
>>>>>>>>>>>>>>>>>             if k != 'id':
>>>>>>>>>>>>>>>>>                 vals[k] = v
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>     db.t_disziplin.insert(**vals)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>     rec = db(db.t_disziplin.f_title ==
>>>>>>>>>>>>>>>>> recname).select().first()
>>>>>>>>>>>>>>>>>     rec_id = rec.id
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>     # redirect for edit the new record
>>>>>>>>>>>>>>>>>     redirect(URL(r=request, f='konstanten/t_disciplin/edit
>>>>>>>>>>>>>>>>> /t_disciplin',args=str(rec_id)))
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Am Freitag, 2. Mai 2014 14:29:26 UTC+2 schrieb LoveWeb2py:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> There are many times when I just want to copy the values
>>>>>>>>>>>>>>>>>> of one record in my sqlform and create a new record, but 
>>>>>>>>>>>>>>>>>> modify the content
>>>>>>>>>>>>>>>>>> and save it. Is there an easy way to do this with web2py or 
>>>>>>>>>>>>>>>>>> would I have to
>>>>>>>>>>>>>>>>>> write the code?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Many thanks
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>  --
>>>>>>>>>>>>>>>>> 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+un...@googlegroups.com.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout
>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>  --
>>>>>>>>>>>>>>> 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+un...@googlegroups.com.
>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>  --
>>>>>>>>>>>> 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+un...@googlegroups.com.
>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>  --
>>>>>>> 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+un...@googlegroups.com.
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>>  --
>>>>> 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.
>>>>>
>>>>
>>>>
>>>  --
>>> 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/U2ajc9LzVCk/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> web2py+unsubscr...@googlegroups.com.
>>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  --
>> 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.
>>
>
>  --
> 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/U2ajc9LzVCk/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> web2py+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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