Невозможно импортировать модуль в тестовом файле - PullRequest
0 голосов
/ 16 февраля 2020

Привет. У меня странная проблема: при попытке импортировать модели в тестовый файл я получаю сообщение об ошибке:

ModuleNotFoundError: Нет модуля с именем 'Book'

enter image description here

модуль существует, потому что я скопировал и вставил его из другого файла.

Код моих моделей:

from django.db import models
from isbn_field import ISBNField
from Book.validators import page_validator, date_validator

class Book(models.Model):
    title = models.CharField(max_length=100)    
    publication_date = models.CharField(validators=[date_validator,], max_length=10)
    authors = models.ManyToManyField("Author", related_name="author")
    ISBN = ISBNField() #validators=[book_unique_validator,]
    pages = models.IntegerField(validators=[page_validator,], blank=True)
    language = models.CharField(max_length=4)

    def __str__(self):
        return self.title

    def get_all_authors(self):
        return "".join([x.name.title() +", " for x in self.authors.all()])[:-2]

    class Meta:
         ordering = ["title"] 

Код моего теста:

from django.test import TestCase
from Book.models import Book, Author


class BookAPITestCase(TestCase):

    def create(self):
        author_obj = Author.create(
        name="test author"
        )
        book_obj = Book.create(
            title="Test_title",
            publication_date="2019-11-20",
            authors=author_obj,
            ISBN="9788381107419",
            pages=295,
            language="en"
        )

    def test_author(self):
        author_count = Author.objects.count()
        self.assertEqual(author_count, 1)

Ps. Я пробовал несколько различных вариантов импорта, таких как: из Book.models из моделей из .models Ни один из них не работал в этом одном файле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...