Hello,
I'm trying to make my own validator which require access to models:
class Network(Model):
    city =
CharField('Miejscowosc',maxlength=128,default='Bialystok')
    description = CharField('Opis',maxlength=128)
    network_ip = IPAddressField(unique=True)
    network_prefix = CharField(maxlength=2)
    router = IPAddressField(validator_list=[is_inside_network])
    notice = TextField('Uwagi',blank=True,null=True)


class Host(Model):
    ip = IPAddressField(unique=True)
    #ip = IPAddressField(unique=True)
    hostname = CharField('Nazwa hosta',maxlength=128)
    description = CharField('Opis',maxlength=255,blank=True,null=True)
    network = ForeignKey(Network)
    hwaddr = CharField('MAC',maxlength=17,blank=True)
    notice = TextField('Uwagi',blank=True,null=True)


When user adds host I'm trying to check if he choose proper network
using such validator:

# import above models
from wfs.hnm.models import *

def is_inside_chosen_network(field_data,all_data):
    host_network=Network.objects.get(id=all_data['network'])
    host_network_ip=host_network.network_ip
    host_network_prefix=host_network.network_prefix
    s=ipaddr.ip_set()

s.add_network(ipaddr.network(host_network_ip,int(host_network_prefix)))
    if not s.contains(field_data):
        raise validators.ValidationError("Adres IP host nie nalezy do
wybranej sieci - popraw siec lub adres IP")


Here is error I'm getting:
n [6]: is_inside_chosen_network("89.161.0.2",{})
---------------------------------------------------------------------------
exceptions.NameError                                 Traceback (most
recent call last)

/home/spock/py/wfs/<ipython console>

/home/spock/py/wfs/hnm/validators.py in
is_inside_chosen_network(field_data, all_data)
     31
     32 def is_inside_chosen_network(field_data,all_data):
---> 33     host_network=Network.objects.get(id=all_data['network'])
     34     host_network_ip=host_network.network_ip
     35     host_network_prefix=host_network.network_prefix

NameError: global name 'Network' is not defined

It's seems like some loop :) - how to solve this ?

Thanks for attention :)


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users
-~----------~----~----~----~------~----~------~--~---

Reply via email to