'return a list of the possible values'

def get_values(self, env):

    selection = self.selection
    if isinstance(selection, basestring):
        selection = getattr(env[self.model_name], selection)()
    elif callable(selection):
        selection = selection(env[self.model_name])
    return [value for (value, _) in selection]
