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
<[email protected]>wrote:

> python2.7 web2py ...
>
>
> On Fri, May 2, 2014 at 4:01 PM, LoveWeb2py <[email protected]> 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 <[email protected]> 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 <[email protected]>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 
>>>>>>>>>>> <[email protected]>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 <[email protected]> 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 [email protected].
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> 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 [email protected].
>>>>>>>>>>>> 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 [email protected].
>>>>>>>>> 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 [email protected].
>>>> 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 [email protected].
>> 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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to