Thanks ! A case of tired eye syndrome... Works fine now.
Don On Jul 14, 2014, at 8:02, lyn2py <lyn...@gmail.com> wrote: > Syntax doesn't look right. Should be: > > row=db.test_all_fields(request.args[1]) > form=SQLFORM(db.test_all_fields, row) > > > > On Monday, July 14, 2014 8:27:59 AM UTC+8, Don O'Hara wrote: > I'm experimenting with the various field types (mysql) to learn more about > web2py. > I'm not sure why I got this error > > <type 'exceptions.AttributeError'> 'str' object has no attribute 'writable' > > Version > web2py(tm) Version 2.9.5-trunk+timestamp.2014.07.03.12.21.52 > > > Given this table: > > db.define_table('test_all_fields', > Field('f1_boolean','boolean'), > Field('f1a_string'), > Field('f2_text','text'), > Field('f3_json','json'), > Field('f4_password','password'), > Field('f5_blob','blob'), > Field('f6_upload','upload'), > Field('f7_integer','integer'), > Field('f8_bigint','bigint'), > Field('f10_double','double'), > Field('f11_decimal','decimal(8,2)'), > Field('f12_date','date'), > Field('f13_time','time'), > Field('f14_datetime','datetime'), > #Field('f15_list_integer','list:integer'), > #Field('f16_list_string','list:string'), > > ) > > I wanted to display a record from it using SQLFORM, with all defaults: > > row=db.test_all_fields(request.args[1]) > form=SQLFORM(row) > > > The error is being thrown in gluon/sqlhtml.py, line 1037: > > Aren't the default attributes for a Field maintained throughout? > > Thanks!! > > Don > > Field(name, 'string', length=None, default=None, > required=False, requires='<default>', > ondelete='CASCADE', notnull=False, unique=False, > uploadfield=True, widget=None, label=None, comment=None, > writable=True, readable=True, update=None, authorize=None, > autodelete=False, represent=None, compute=None, > uploadfolder=None, > uploadseparate=None,uploadfs=None) > > > > Code listing > > 1032. > 1033. > 1034. > 1035. > 1036. > 1037. > > 1038. > 1039. > 1040. > 1041. > > # if no fields are provided, build it from the provided table > # will only use writable or readable fields, unless forced to ignore > if fields is None: > fields = [f.name for f in table if > (ignore_rw or f.writable or f.readable) and > > (readonly or not f.compute)] > self.fields = fields > > # make sure we have an id > Variables > > ignore_rw False > f.readable undefined > f.writable undefined > f 'f4_password' > > > > -- > 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 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.