2015-02-20 11 views
12

Tôi đã 2 ứng dụng được cài đặt trong dự án Django của tôi "aplikacja"(fields.E300) Dòng định nghĩa một mối quan hệ với mô hình mà chưa được cài đặt, hoặc là trừu tượng

Đầu tiên một tên là: "Godzina"

from django.db import models 

class Godzina (models.Model): 
     GODZINA = (
     ('19', '19'), 
     ('20', '20'), 
     ('21', '21'), 
     ) 
     godzina = models.CharField(max_length=6, choices=GODZINA, verbose_name='jezyk') 

và thứ hai có tên là: "UserProfile"

from django.db import models 
from django.contrib.auth.models import User 
from godzina.models import Godzina 

class UserProfile(models.Model): 
    czas = models.ForeignKey('Godzina') 
    user = models.OneToOneField(User) 

tôi nhận được lỗi như vậy:

userprofile.UserProfile.czas: (fields.E300) Field defines a relation with model 'Godzina', which is either not installed, or is abstract. 

Điều đó có nghĩa là gì? Tôi muốn rằng người dùng chỉ có thể chọn thời gian như một quản trị viên đưa vào ứng dụng "Godzina" Ví dụ tôi định nghĩa giờ 19 giờ tối, 20 giờ chiều và sau đó người dùng có thể chọn các giá trị đó trong ứng dụng UserProfile

Có thể khắc phục sự cố này?

Trả lời

23

Bạn nên thêm tên ứng dụng với tên mô hình có liên quan trong định nghĩa FK:

czas = models.ForeignKey('firstapp.Godzina') 
+4

thiết lập của tôi có hệ thống giống hệt nhau nhưng sửa chữa này không làm việc cho tôi. – rschwieb

+0

Tại sao tính năng này hoạt động? – BigMonkey89WithaLeg

Các vấn đề liên quan