2014-04-15 2 views
0

클래스 주문에 대한 외래 사용자 인 필드에 "주문"필드를 추가하려고합니다. Order에는 OrderItem 클래스에 대한 외래 키가 있습니다. OrderItem에는 다른 응용 프로그램의 클래스 상점 항목에 대한 OneToOneField가 있습니다. 나는 south를 사용하여 데이터베이스를 마이그레이션했다. 데이터베이스의 마이그레이션 방식에 오류가 있다고 생각하지 않습니다. "오류 : 해당 테이블이 없습니다 : webstore_storeitem"과 같은 운영 오류가 발생합니다. 어떤 도움이라도 대단히 감사하겠습니다. 고맙습니다. 내가 남쪽에 무슨 짓을Django 모델 수정 누락 필드 : [해결 된]

from django.contrib.auth.models import User 
from django.db import models 
from loginRouter import * 



class OrderItem(models.Model): 
     itemCost = models.DecimalField(max_digits=16,decimal_places=2) 
     itemQuantity = models.IntegerField() 
     itemID = models.OneToOneField('webstore.StoreItem') 
     def __unicode__(self): 
      return self.itemID.itemName 


class Order(models.Model): 

     orderDate = models.DateTimeField('Order Date') 
     shippingCost = models.DecimalField(max_digits=16,decimal_places=2) 
     totalCost = models.DecimalField(max_digits=16,decimal_places=2) 
     item = models.ForeignKey(OrderItem) 
     def __unicode__(self): 
      return unicode(self.item) 


class UserProfile(models.Model): 
     user = models.OneToOneField(User) 
     confirmation_code = models.CharField(max_length=128) 
     reset_code = models.CharField(max_length=128) 
     address_lineOne = models.CharField(max_length=128) 
     address_lineTwo = models.CharField(max_length=128) 
     city = models.CharField(max_length=128) 
     State = models.CharField(max_length=128) 
     zipCode = models.CharField(max_length=10) 
     orders = models.ForeignKey(Order) 
     def __unicode__(self): 
      return self.user.username 

:

before Change: 
$./manage.py schemamigration login --initial 
after change: 
$./manage.py schemamigration login --auto 
$./manage.py migrate login --fake 
$./manage.py migrate login 

webstore.Models :

from django.db import models 
from imagekit.models import ProcessedImageField 
from imagekit.processors import ResizeToFill 

class StoreCategory(models.Model): 
    categoryName = models.CharField(max_length=128) 
    def __unicode__(self): 
    return self.categoryName 

class StoreItem(models.Model): 

    category = models.ForeignKey(StoreCategory) 
    itemName = models.CharField(max_length=128) 
    itemNameid = models.CharField(max_length=128) 
    description = models.CharField(max_length=2048) 
    price = models.DecimalField(max_digits=16,decimal_places=2) 
    quantity = models.IntegerField(default=0) 
    picture = ProcessedImageField(upload_to='avatars', 
             processors=[ResizeToFill(250, 185)], 
             format='JPEG', 
             options={'quality': 60}) 
    featured_picture = ProcessedImageField(upload_to='avatars', 
             processors=[ResizeToFill(800, 300)], 
             format='JPEG', 
             options={'quality': 60}) 
    isFeatured = models.BooleanField(default=False) 
    def __unicode__(self): 
     return self.itemName 
+0

오류의 전체 경로를 포함 할 수 있습니까? 또한 OneToOneField에 의해 OrderItem과 연결된 클래스를 포함시킬 수 있습니까? –

+0

'./manage.py migrate login --fake'하면 마이그레이션이 전달되고 테이블은 생성되지 않습니다. 당신은 아마도 ./manage.py migrate login --fake 0001' – karthikr

+0

다른 것을 가지고 있습니다. 모델이 추가되었습니다. 당신이 트랙으로 무엇을 의미하는지 확실하지 않습니다, 미안 해요. @karthikr : 나는 또한 데이터베이스를 껐다가 다시 만들었다. 또한, 나는 각 모델 (각 응용 프로그램 용)이 별도의 데이터베이스를 사용하고 있다고 생각했습니다. – pdf2e

답변

0

문제는 각 응용 프로그램은 별도의 데이터베이스를 사용하고 있었던 것이 었습니다. 나는 그들을 합병했고 이것이 내가 가진 문제를 해결했다.