app/soc/models/reviewer.py
author Todd Larsen <tlarsen@google.com>
Thu, 25 Sep 2008 17:17:11 +0000
changeset 202 b8b4a83788d4
parent 181 fdd29818a954
child 207 8ecc2e4198cd
permissions -rw-r--r--
A key_name controller module to collect all of the name...() functions that compose Model entity key names, plus some minor changes to other controller modules to illustrate the proposed use. Patch by: Todd Larsen Review by: Pawel Solyga Review URL: http://codereviews.googleopensourceprograms.com/804 Review URL: http://codereviews.googleopensourceprograms.com/804
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     1
#!/usr/bin/python2.5
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     2
#
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     3
# Copyright 2008 the Melange authors.
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     4
#
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     5
# Licensed under the Apache License, Version 2.0 (the "License");
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     6
# you may not use this file except in compliance with the License.
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     7
# You may obtain a copy of the License at
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     8
# 
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
     9
#   http://www.apache.org/licenses/LICENSE-2.0
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    10
# 
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    11
# Unless required by applicable law or agreed to in writing, software
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    12
# distributed under the License is distributed on an "AS IS" BASIS,
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    13
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    14
# See the License for the specific language governing permissions and
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    15
# limitations under the License.
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    16
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    17
"""This module contains the Reviewer Model."""
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    18
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    19
__authors__ = [
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    20
  '"Todd Larsen" <tlarsen@google.com>',
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    21
  '"Sverre Rabbelier" <sverre@rabbelier.nl>',
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    22
]
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    23
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    24
from google.appengine.ext import db
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    25
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    26
from soc import models
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    27
import soc.models.author
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    28
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    29
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    30
class Reviewer(db.Model):
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    31
  """Reviewer details for a specific Program.
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    32
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    33
  A Reviewer entity participates in the following relationships implemented 
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    34
  as a db.ReferenceProperty elsewhere in another db.Model:
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    35
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    36
   reviews)  an optional 1:many relationship of Reviews written by the
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    37
     Reviewer.  This relation is implemented as the 'reviews'
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    38
     back-reference Query of the Review model 'reviewer' reference.
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    39
  """
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    40
  
181
fdd29818a954 Remove Author model (use Person instead). Update models after removing Author. Add new Sponsor, Organization models.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 54
diff changeset
    41
  #: A 1:1 relationship associating a Contributor with Person
fdd29818a954 Remove Author model (use Person instead). Update models after removing Author. Add new Sponsor, Organization models.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 54
diff changeset
    42
  #: details and capabilities. The back-reference in the Person model
fdd29818a954 Remove Author model (use Person instead). Update models after removing Author. Add new Sponsor, Organization models.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 54
diff changeset
    43
  #: is a Query named 'reviewer'.
fdd29818a954 Remove Author model (use Person instead). Update models after removing Author. Add new Sponsor, Organization models.
Pawel Solyga <Pawel.Solyga@gmail.com>
parents: 54
diff changeset
    44
  person = db.ReferenceProperty(reference_class=models.person.Person,
15
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    45
                                required=True, collection_name="reviewer")
6200e66bb046 Initial implementation of the Reviewer Model in the reviewer.py module.
Sverre Rabbelier <srabbelier@gmail.com>
parents:
diff changeset
    46