Please re-post your code. clearly there are some inconstancies between year 
and yearstring and that is confusing some of us. Moreover, if you are using 
sqlite and have no important data in db, delete everything in databases/ 
then try again.

On Monday, 21 May 2012 15:04:19 UTC-5, Brandon Reynolds wrote:
>
> I checked it and it was year not year string. I also tried deleting the 
> whole year field and that had not effect i still got the same error. So i 
> don't think this is an issue with my field. What is the next step i should 
> take?
>
>
> -Brandon
>
> On Monday, May 21, 2012 1:54:01 PM UTC-6, Jim S wrote:
>>
>>  This may be way off-base, but can you check your model to make sure the 
>> line you have below as:
>>
>> Field('year', 'string', requires=IS_NOT_EMPTY()),
>>
>> is not mistakenly typed as:
>>
>> Field('yearstring', requires=IS_NOT_EMPTY()),
>>
>> Also, for string fields you don't need to specify the type ('string'), 
>> that is the default.  I typically add a length to it as follows:
>>
>> Field('year', length=4, requires=IS_NOT_EMPTY()),
>>
>>     -Jim
>>
>> On 5/21/2012 2:40 PM, Brandon Reynolds wrote: 
>>
>> How do I insert the value into that yearstring field? I understand i got 
>> the key error because of the field not being defined. I was trying that 
>> only as a troubleshooting step to see what happened. Should i make a 
>> yearstring field in the db and then just assing it a default value? Or how 
>> else to i get the value into that field? I also have another form that 
>> works fine on the site and it doesn't have yearstring field. Please advise.
>>
>> On Monday, May 21, 2012 12:07:42 PM UTC-6, Anthony wrote: 
>>>
>>> In your model, there is no "yearstring" field defined (there is a "year" 
>>> field, though) -- so that's why you get a key error when trying to set 
>>> db.home.yearstring.default. You might be getting the integrity error 
>>> because the database itself does include a "yearstring" field (with a 
>>> notnull requirement), and you are not inserting any value for that field. 
>>>
>>>  Anthony
>>>
>>> On Monday, May 21, 2012 1:08:25 PM UTC-4, Brandon Reynolds wrote: 
>>>>
>>>> Hello, 
>>>>
>>>>  I am new to web2py and pretty new to programming in general. I am 
>>>> getting the following error when trying to insert a new record with a form 
>>>> made with crud.create:
>>>>
>>>>  <class 'sqlite3.IntegrityError'> home.yearstring may not be NULL 
>>>>
>>>>  I have nothing in my model/view/controllers at all that mentions the 
>>>> year string. I tried to set yearstring a default value 
>>>> with db.home.yearstring.default = "0" but then got a key error that year 
>>>> string was not defined. Here is my controller for this view:
>>>>
>>>>  @auth.requires_membership('Admin')
>>>> def new_home():
>>>>     db.home.pid.default = request.args(0) or redirect(URL('parks'))
>>>>     db.home.price.default = "$0000.00"
>>>>     form = crud.create(db.home, next='home/[id]')
>>>>     return locals()
>>>>  
>>>>  Here is the model for this controller:
>>>>
>>>>  db.define_table('home', 
>>>> Field('pid', notnull=True),
>>>> Field('lot', 'string'),
>>>> Field('year', 'string', requires=IS_NOT_EMPTY()),
>>>> Field('make', 'string'),
>>>> Field('model', 'string'),
>>>> Field('for_sale', 'boolean', default=True),
>>>> Field('beds', 'string', requires=IS_NOT_EMPTY()),
>>>> Field('baths', 'string', requires=IS_NOT_EMPTY()),
>>>> Field('fridge', 'boolean'),
>>>> Field('stove', 'boolean'),
>>>> Field('dishwasher', 'boolean'),
>>>> Field('microwave', 'boolean'),
>>>> Field('washer', 'boolean'),
>>>> Field('dryer', 'boolean'),
>>>> Field('photo1', 'upload'),
>>>> Field('photo2', 'upload'),
>>>> Field('photo3', 'upload'),
>>>> Field('photo4', 'upload'),
>>>> Field('photo5', 'upload'),
>>>> Field('price', 'string' , requires=IS_NOT_EMPTY()),
>>>> Field('description', 'text', requires=IS_NOT_EMPTY()))
>>>>  
>>>>  Also here is the traceback.
>>>>
>>>>  Traceback (most recent call last):
>>>>   File "gluon/restricted.py", line 205, in restricted
>>>>   File 
>>>> "/Applications/web2py.app/Contents/Resources/applications/pages/controllers/view.py"
>>>>  <http://127.0.0.1:8000/admin/default/edit/pages/controllers/view.py>, 
>>>> line 110, in <module>
>>>>   File "gluon/globals.py", line 173, in <lambda>
>>>>   File "gluon/tools.py", line 2575, in f
>>>>   File 
>>>> "/Applications/web2py.app/Contents/Resources/applications/pages/controllers/view.py"
>>>>  <http://127.0.0.1:8000/admin/default/edit/pages/controllers/view.py>, 
>>>> line 88, in new_home
>>>>   File "gluon/tools.py", line 3172, in create
>>>>   File "gluon/tools.py", line 3115, in update
>>>>   File "gluon/sqlhtml.py", line 1274, in accepts
>>>>   File "gluon/dal.py", line 6829, in insert
>>>>   File "gluon/dal.py", line 928, in insert
>>>> IntegrityError: home.yearstring may not be NULL
>>>>
>>>>  
>>>>  What is this error ad how can i get around it?
>>>>
>>>   

Reply via email to