When you import HoleImage don't remove Hole :) On Jun 11, 2014 3:41 PM, "Patrick C" <[email protected]> wrote:
> Hi Jorge, > > Thanks for helping out - I understand that and have just tried it but > still get the error: > > NameError at /admin/ > > name 'Hole' is not defined > > Request Method:GETRequest URL:http://127.0.0.1:8000/admin/Django Version: > 1.6.5Exception Type:NameErrorException Value: > > name 'Hole' is not defined > > Exception Location:/Users/my_laptop/development/golfsmart/holes/admin.py > in <module>, line 12Python Executable:/usr/bin/pythonPython Version:2.7.5 > > So just to clarify my structure incase I'm missing something on > pluralisation: > > holes > - admin.py > - model.py > > > *models.py:* > > from django.db import models > > class Hole(models.Model): > hole_number = models.IntegerField() > hole_name = models.CharField(max_length=255) > hole_description = models.CharField(max_length=500) > > def __str__(self): > return self.hole_number > > class HoleImage(models.Model): > hole = models.ForeignKey(Hole, related_name='images') > image = models.ImageField(upload_to='hole_photos') > caption = models.CharField(max_length=250) > > *admin.py:* > > from django.contrib import admin > from holes.models import HoleImage > > class HoleImageInline(admin.TabularInline): > model = HoleImage > > class HoleAdmin(admin.ModelAdmin): > fields = ['hole_number', 'hole_name', 'hole_description'] > list_display = ['hole_number', 'hole_name', 'hole_description'] > inlines = [ HoleImageInline, ] > > admin.site.register(Hole) > > > > On Wednesday, June 11, 2014 9:36:11 PM UTC+1, Jorge Andrés Vergara Ebratt > wrote: >> >> In admin.py you have >> >> from hotels.models import Hole >> >> Add HoleImage to that import >> On Jun 11, 2014 3:19 PM, "Patrick C" <[email protected]> wrote: >> >>> Hi All, >>> >>> New to Django / Python (coming from PHP). >>> >>> Trying to make a site for a golf course where there is a hole by hole >>> guide, each hole has a number, name, description then multiple images for >>> the gallery. >>> >>> I've spend the last few hours googling how I'm going wrong here because >>> I get the error in the subject line. >>> >>> My models.py is: >>> >>> from django.db import models >>> >>> *class Hole(models.Model):* >>> * hole_number = models.IntegerField()* >>> * hole_name = models.CharField(max_length=255)* >>> * hole_description = models.CharField(max_length=500)* >>> >>> * def __str__(self):* >>> * return self.hole_number* >>> >>> *class HoleImage(models.Model):* >>> * hole = models.ForeignKey(Hole, related_name='images')* >>> * image = models.ImageField(upload_to='hole_photos')* >>> * caption = models.CharField(max_length=250)* >>> >>> >>> and my admin.py is: >>> >>> *from django.contrib import admin* >>> *from holes.models import Hole* >>> >>> *class HoleImageInline(admin.TabularInline):* >>> * model = HoleImage* >>> >>> *class HoleAdmin(admin.ModelAdmin):* >>> * fields = ['hole_number', 'hole_name', 'hole_description']* >>> * list_display = ['hole_number', 'hole_name', 'hole_description']* >>> * inlines = [ HoleImageInline, ]* >>> >>> *admin.site.register(Hole)* >>> >>> >>> Full admin panel error is: >>> >>> NameError at /admin/ >>> >>> name 'HoleImage' is not defined >>> >>> Request Method:GETRequest URL: http://127.0.0.1:8000/admin/Django >>> Version: 1.6.5Exception Type: NameErrorException Value: >>> >>> name 'HoleImage' is not defined >>> >>> Exception Location: /Users/my_laptop/development/golfsmart/holes/admin.py >>> in HoleImageInline, line 5Python Executable: /usr/bin/pythonPython >>> Version: 2.7.5 >>> >>> >>> As I say, I'm new to this and have had a good trial and error stab, I'm >>> sure it's something simple I am overlooking and once I have it resolved I >>> will have a lesson learned as I have a few other apps to setup that will >>> use this many type for images. >>> >>> Thanks in advance. >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Django users" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at http://groups.google.com/group/django-users. >>> To view this discussion on the web visit https://groups.google.com/d/ >>> msgid/django-users/7079f896-e765-428f-a95a-6f953ad105f8% >>> 40googlegroups.com >>> <https://groups.google.com/d/msgid/django-users/7079f896-e765-428f-a95a-6f953ad105f8%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> For more options, visit https://groups.google.com/d/optout. >>> >> -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/django-users. > To view this discussion on the web visit > https://groups.google.com/d/msgid/django-users/fca37d2a-b54f-4cec-af32-df5a6d1bfbdf%40googlegroups.com > <https://groups.google.com/d/msgid/django-users/fca37d2a-b54f-4cec-af32-df5a6d1bfbdf%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAAeX05HXjKjOdWH9o6L990JGpwW1-c2r%2BX3QTwUsEvyvp_sTAA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.

