I am trying to use the bulk loader but am having trouble with it.
This is my code:

modules.py:

from google.appengine.ext import db

class Installs(db.Model):
        status = db.StringProperty()
        scheduled_date = db.DateProperty()
        customer_name = db.StringProperty()
        contractor_name = db.StringProperty()
        phone = db.PhoneNumberProperty(default='not provided')
        address = db.StringProperty()
        city = db.StringProperty()
        door_size_type = db.TextProperty()
        door_color = db.StringProperty()
        tech_assigned = db.StringProperty()

main.py:

import datetime
import models
from google.appengine.ext import bulkload
from google.appengine.api import datastore_types
from google.appengine.ext import search

class PersonLoader(bulkload.Loader):
  def __init__(self):
    # Our 'Person' entity contains a name string and an email
        bulkload.Loader.__init__(self, 'Installs',
                         [('status', str),
                          ('scheduled_date', str),
                          ('customer_name', str),
                          ('contractor_name', str),
                          ('phone', datastore_types.PhoneNumber),
                          ('address', str),
                          ('city', str),
                          ('door_size_type', datastore_types.Text),
                          ('door_color', str),
                          ('tech_assigned', str)
                          ])

  def HandleEntity(self, entity):
    ent = search.SearchableEntity(entity)
    return ent

if __name__ == '__main__':
  bulkload.main(PersonLoader())


When i try to run the bulk loader it fales when i get to a row that
has an empty phone number:

Loading from line 1...done.
Loading from line 2...error:
Traceback (most recent call last):
  File "C:\Program Files\Google\google_appengine\google\appengine\ext
\bulkload\_
_init__.py", line 366, in LoadEntities
    new_entities = loader.CreateEntity(columns, key_name=key_name)
  File "C:\Program Files\Google\google_appengine\google\appengine\ext
\bulkload\_
_init__.py", line 228, in CreateEntity
    entity[name] = converter(val)
  File "C:\Program Files\Google\google_appengine\google\appengine\api
\datastore_
types.py", line 746, in __init__
    ValidateString(phone, 'phone')
  File "C:\Program Files\Google\google_appengine\google\appengine\api
\datastore_
types.py", line 100, in ValidateString
    raise exception('%s must not be empty.' % name)
BadValueError: phone must not be empty.

ERROR    2009-03-18 08:36:16,125 bulkload_client.py] Import failed

I am trying to give it a default value of something but obviously i am
doing something wrong..

Can someone give me a hand?  Thanks.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to