Я использую Django и Python 3.7. У меня есть два приложения в моем проекте - общее и основное. В общем, у меня есть файл "model_utils.py" в корне моего приложения (прямо рядом с models.py). Содержит этот код
class RawCol(Expression):
def __init__(self, model, field_name):
field = model._meta.get_field(field_name)
self.table = model._meta.db_table
self.column = field.column
super().__init__(output_field=CharField())
def as_sql(self, compiler, connection):
sql = f'"{self.table}"."{self.column}"'
return sql, []
Как мне ссылаться на этот класс из моего другого приложения, "mainsite"? Я поместил это наверху одного из моих файлов в главном сайте ..
from common import RawCol
но когда я запускаю несколько тестов, я получаю эту ошибку ...
ImportError: cannot import name 'RawCol' from 'common' (/Users/davea/Documents/workspace/mainsite_project/common/__init__.py)
Редактировать: Структура проекта в каталогах верхнего уровня выглядит как ...
+ common
+ mainsite
+ mainsite_project
+ manage.py
+ templates
+ venv