2017-06-24 7 views
0

私はブラウザにadminサイト内の製品にアクセスして追加することができません?-Django

Using the URLconf defined in myshop.urls, Django tried these URL patterns, in this order: 
     ^admin/ ^$ [name='index'] 
      ^admin/ ^login/$ [name='login'] 
      ^admin/ ^logout/$ [name='logout'] 
      ^admin/ ^password_change/$ [name='password_change'] 
      ^admin/ ^password_change/done/$ [name='password_change_done'] 
      ^admin/ ^jsi18n/$ [name='jsi18n'] 
      ^admin/ ^r/(?P<content_type_id>\d+)/(?P<object_id>.+)/$ [name='view_on_site'] 
      ^admin/ ^auth/group/ 
      ^admin/ ^auth/user/ 
      ^admin/ ^sites/site/ 
      ^admin/ ^(?P<app_label>auth|sites)/$ [name='app_list'] 
     The current path, admin/myshop/Product/add/, didn't match any of these. 

をこのエラーを取得する私は、基本的には、ジャンゴと私のDjangoのお店アプリを作成するための初心者です。私は

from django.db import models 

# Create your models here. 
from django.core.urlresolvers import reverse 


class Category(models.Model): 
name = models.Charfield(max_length=200, db_index=True) 
slug = models.Slugfield(max_length=200, db_index=True, unique=True) 

class Meta: 
ordering = ('name',) 
verbose_name = 'category' 
verbose_name_plural = 'categories' 

def__str__(self): 
return self.name 

def get_absolute_url(self): 
return reverse('shop:product_list_by_category', args=[self.slug]) 

class product(models.Model): 
category=models.ForeignKey(Category, related_name='products') 
name=models.CharField(max_length=200, db_index=True) 
slug=models.SlugField(max_length=200, db_index=True) 
image=models.ImageField(upload_to'product/%Y/%m/%d',blank=True) 
description=models.TextField(blank=True) 
price=models.DecimalField(max_digits=10, decimal_places=2) 
stock=models.PositiveIntegerField() 
available=models.BooleanField(default=True) 
created=models.Datetimefield(auto_now_add=True) 
updated=models.DatetimeField(auto_now=True) 

class Meta: 
ordering=('-created',) 
index_togetther=(('id','slug'),) 

def__str__(self): 
return self.name 

def get_absolute_url(self): 
return reverse('shop:product_detail', args=[self.id,self.slug) 

これは私のmodels.pyファイルである http://127.0.0.1:8000/admin/myshop/Product/add/私のadmin.pyこの

from django.contrib import admin 
from .models import Category, Product 

class CategoryAdmin(admin.ModelAdmin): 
list_display=['name','slug'] 
prepopulated_fields={'slug':('name',)} 
admin.site.register(Category, CategoryAdmin) 

class ProductAdmin(admin.modelAdmin): 
list_display=['name','slug','category','price','stock','avialable','created','updated'] 
list_filter=['available','created','updated','category'] 
list_editable=['price','stock','available'] 
prepopulated_fields=['slug':('name',)} 
admin.site.register(Product, ProductAdmin) 

のように見えるURLを入力することで、このエラーを取得するurl.py

from django.conf.urls import url 
from django.contrib import admin 
admin.autodiscover() 

urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 

]

私はすべてをチェックしようとしましたが、すべてが私には大丈夫です。

+0

に製品を変更、メインとアプリのために – Exprator

+0

私はなぜあなたがあなたの本当のコードではないものを投稿したのか分かりません。どこでも 'class'ではなく' Class'のようなエラーがあり、このコードは実行されません。インデントエラーはもちろんのこと、 –

+0

クラスをクラスに変更し、まだ動作していない識別エラーを修正しました –

答えて

1

問題はあなたadmin.pyファイルを使用すると、小文字の製品クラス を持っている投稿コードから お使いのモデルですが、管理者には、あなたが資本プロダクトを取ったので、あなたのURLを投稿する製品

from django.contrib import admin 
from .models import Category, product 

class CategoryAdmin(admin.ModelAdmin): 
list_display=['name','slug'] 
prepopulated_fields={'slug':('name',)} 
admin.site.register(Category, CategoryAdmin) 

class ProductAdmin(admin.modelAdmin): 
list_display=['name','slug','category','price','stock','avialable','created','updated'] 
list_filter=['available','created','updated','category'] 
list_editable=['price','stock','available'] 
prepopulated_fields=['slug':('name',)} 
admin.site.register(product, ProductAdmin) 
+0

私はそれを変更しましたが、まだ動作していません –

+0

管理パネルにログインし、製品から製品を追加しようとします。そして、一番上のURLをチェックしてください。それは元のURLになります。ブラウザにURLを直接入れないでください – Exprator

関連する問題