BadValueError: Property title is required
Casey Dwyer
caseydwyer at gmail.com
Fri Jun 3 12:53:20 EDT 2011
On May 31, 1:21 am, "michal.bulla" <michal.bu... at gmail.com> wrote:
> Hello,
>
> I'm trying to create simple method to create category. I set the model
> category:
>
> class Category(db.Model):
> title = db.StringProperty(required=True)
> clashes_count = db.IntegerProperty(default=0)
>
> And the class New Category as well :
>
> class NewCategoryPage(webapp.RequestHandler):
> def get(self):
> categories = Category.all().order('-title')
>
> template_values = { }
> path = os.path.join(os.path.dirname(__file__), 'templates',
> 'category_new.html')
> self.response.out.write(template.render(path, template_values))
>
> def post(self):
> category = Category()
> category.title = self.request.get('title')
> category.put()
> self.redirect('/')
>
> Here is the template:
>
> {%extends "base.html"%}
> {%block body%}
>
> <h2>Add New Category</h2>
>
> <form action="" method="post">
> <div>Title: <input type="text" name="title" size="100" /></div>
> <div><input type="submit" value="Publish"></div>
> </form>
>
> {%endblock%}
>
> The problem is that I'm getting an error BadValueError: Property title
> is required. Can you help me with that ? Thanks
Required properties must be declared in the constructor. Try this
instead:
category = Category(title=self.request.get('title'))
category.put()
More information about the Python-list
mailing list