2011-02-03 38 views
7

Tôi mới đến với thế giới django. Chạy một số ứng dụng hướng dẫn, và khi chạy thử nghiệm python manage.py tôi nhận được một thất bại nói rằng bảng đã tồn tại. Tôi không chắc chuyện gì đang diễn ra. Tôi cũng chạy về phía nam và tôi không gặp lỗi khi di chuyển lược đồ.django - "manag.py kiểm tra" thất bại "bảng đã tồn tại"

Bất kỳ thông tin chi tiết nào được đánh giá cao.

TIA Joey

+0

Có thể có liên quan: http://stackoverflow.com/questions/3090648/django-south-table-already-exists – payne

+0

CÓ! Đó là nó, tôi đã thực hiện một số sai lầm và đã di chuyển ra khỏi đồng bộ với db. cài đặt sạch sẽ sửa nó ngay lập tức. –

Trả lời

15

Nó có thể là một lỗi trong một trong những cuộc di cư về phía nam của bạn. Bạn không thấy vấn đề trên db thực vì việc di chuyển đã được thực hiện (với tùy chọn giả mạo) có thể)

Bạn có thể thử tạo lại db từ scracth và xem nó có hoạt động hay không.

Bạn cũng có thể tắt miền Nam để kiểm tra đơn vị bằng cách thêm SOUTH_TESTS_MIGRATE = False vào settings.py của bạn. Với tùy chọn này, một syncdb thông thường sẽ được thực hiện để tạo cơ sở dữ liệu thử nghiệm. Nó cũng sẽ tăng tốc quá trình thử nghiệm.

Tôi hy vọng nó giúp

+0

câu trả lời rất sâu sắc! –

+0

nếu tôi phải vẽ db từ đầu thì lợi ích của miền Nam là gì? – Ahsan

+0

@Ahsan DB được tạo từ đầu chỉ để kiểm tra và nó xảy ra theo cách này cho dù bạn có sử dụng miền Nam hay không. –

0

và nếu bạn đang thử nghiệm với mũi:

DST_RUN_SOUTH_MIGRATIONS = False

0

này cũng xảy ra với mũi khi
--cover-package=userdata,incorrectname
Một trong những tên gói là không chính xác

1

Điều này cũng xảy ra với tôi với mã di sản nhưng vì một lý do khác.

Tôi có hai mô hình với db_table tham chiếu cùng một bảng db. Tôi biết điều đó thật ngu ngốc, nhưng đó không phải lỗi của tôi)

Và tôi chưa bao giờ tìm thấy bất kỳ thứ gì trên internet có thể giúp tôi. Tôi đã được lưu bằng độ dài được đặt thành 3 (manage.py test -v 3) Hy vọng điều này sẽ giúp mọi người.

class Bla1(Model): 
    some_column = ... 
    class Meta: 
     db_table = 'some_table' 

class Bla2(Model): 
    some_column = ... 
    class Meta: 
     db_table = 'some_table' 
Các vấn đề liên quan