Обновленный вопрос:
Как правильно импортировать объекты из других модулей в файлы модуля app и admin и решить проблему ошибки "attempted relative import with no known parent package"?
Структура проекта:
```
app
__init__.py
models.py
views.py
admin
__init__.py
```
Файл `__init__.py`:
```python
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_login import LoginManager
app = Flask(__name__)
db = SQLAlchemy(app)
login_manager = LoginManager(app)
```
Файл `models.py`:
```python
from app import db, login_manager
```
или
```python
from . import db
```
Файл `views.py`:
```python
from . import db
```
Ошибка:
```
File "C:\Users\xabor\PycharmProjects\flask\TODO-app\app\models.py", line 1, in
from . import app
ImportError: attempted relative import with no known parent package
```
Также, я хотел бы уточнить, как правильно импортировать объекты из модуля `app` и `admin` в `admin/__init__.py`:
```python
from .. import app, db, admin
```
В вашем случае, чтобы правильно импортировать экземпляр класса из файла, находящегося в том же каталоге, вы можете использовать следующий синтаксис: ```python from .имя_файла_без_расширения import ИмяКласса ``` Например, если у вас есть файлы `models.py` и `views.py` в каталоге `app`, и вы хотите импортировать экземпляр класса `MyClass` из файла `models.py` в файл `views.py`, вы можете сделать это следующим образом: ```python from .models import MyClass ``` Важно помнить, что перед именем файла ставится точка (`.`), чтобы указать, что импорт должен быть осуществлен из текущего каталога.
- Импорты в Python определяются на основе того, какие пути указаны в переменной PYTHONPATH. Импорты производятся относительно этих путей. Для более подробной информации рекомендуется обратиться к официальной документации. - Исходя из моего опыта, рекомендуется не использовать относительные импорты.