2

私は最初の Django アプリに取り組んでいますが、奇妙なエラーが発生しています。私はそれを調べて、私が使用しているバージョン 1.5.1 の Django ドキュメントをチェックしましたが、このエラーについては何も述べていません。

pat.py:9: DeprecationWarning: django.utils.hashcompat is deprecated; use hashlib instead
DeprecationWarning)

TypeError: __init__() got an unexpected keyword argument 'verify_exists'

Django がインストールされている仮想環境を使用しています (ピップ フリーズ出力):

Django==1.5.1
argparse==1.2.1
django-db-log==2.2.1
psycopg2==2.4.6
wsgiref==0.1.2
yolk==0.4.3

python manage.py syncdbまた、仮想環境を非アクティブ化したときに実行しようとしたことに注意することも重要です-エラーはありません. このエラーは、仮想環境を使用している場合にのみ発生します。何か案は?事前に感謝します。これが初心者の質問である場合はお詫びします。私は Django を初めて使用します。

編集:これは有望に思えますが、私の唯一のモデルを見てみると、URLField() を使用したことはありません...

EDIT2:私が持っている唯一のmodels.py:

from django.db import models


class Category(models.Model):
    name = models.CharField(max_length=50)
    slug = models.SlugField(max_length=50, unique=True, help_text='Unique value for product page URL, created from name.')
    description = models.TextField()
    is_active = models.BooleanField(default=True) 
    meta_keywords = models.CharField("Meta Keywords", max_length=255, help_text='Comma-delimited set of SEO keywords for meta tag')
    meta_description = models.CharField("Meta description", max_length=255, help_text='Content for description meta tag')
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

    class Meta:
        db_table = 'categories'
        ordering = ['-created_at']
        verbose_name_plural = 'Categories'

    def __unicode__(self):
        return self.name

    @models.permalink
    def get_absolute_url(self):
        return ('catalog_category', (), {'category_slug': self.slug})

class Product(models.Model):
    name = models.CharField(max_length=255, unique=True)
    slug = models.SlugField(max_length=255, unique=True, help_text= 'Unique value for product page URL, create from name.')
    brand = models.CharField(max_length=50)
    sku = models.CharField(max_length=50)
    price = models.DecimalField(max_digits=9, decimal_places=2)
    old_price = models.DecimalField(max_digits=9, decimal_places=2, blank=True, default=0.00)
    image = models.CharField(max_length=50)
    is_active = models.BooleanField(default=True)
    is_bestseller = models.BooleanField(default=False)
    is_featured = models.BooleanField(default=False)
    quantity = models.IntegerField()
    description = models.TextField()
    meta_keywords = models.CharField(max_length=255, help_text='Comma-delimited set of SEO keywords for meta tag')
    meta_description = models.CharField(max_length=255, help_text='Content for description meta tag')
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)
    categories = models.ManyToManyField(Category)

    class Meta:
        db_table = 'products'
        ordering = ['-created_at']

    def __unicode__(self):
        return self.name

    @models.permalink
    def get_absolute_url(self):
        return('catalog_product', (), {'product_slug': self.slug})

    def sale_price(self):
        if (self.old_price > self.price):
            return self.price
        else: 
            return None
4

1 に答える 1

3

プロジェクトにインストールされているアプリを見て、その理由がわかったと思います。新しいバージョンでは非推奨になっているdjango-db-loguseを見つけました。models.URLField(verify_exists=False, null=True, blank=True)

彼らのプロジェクトはまだアップグレードされていないため、プロジェクトでリクエストを取得するか、そのアプリをアンインストールすることができます

更新: @NathanVillaescusa から

 from django.utils.hashcompat import md5_constructor //deprecated also
于 2013-04-06T07:15:32.943 に答える