в попытке повысить свою квалификацию в области кодирования, я хочу использовать sphinx для создания документации, как маленький домашний проект, который я начал.
В этом проекте я использую sqlalchemy для связи с моей базой данных MySQL, которая была настроена с использованием рабочей среды MySQL.
Во время настройки я также определил комментарии к каждой таблице.
Что я хотел бы сделать, так это включить комментарии к таблице в документацию, чтобы уточнить, что должна делать каждая таблица.
Я использую автоматические функции SQLalchemy.
from sqlalchemy import Table, create_engine
from sqlalchemy.engine import reflection
from sqlalchemy.orm import create_session
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.engine.url import URL
from os import path
# DBCONF is a loaded dict. Ommitted for clarity.
DBURL = URL(**DBCONF)
#Creat DB engine
engine = create_engine(DBURL)
insp = reflection.Inspector.from_engine(engine)
Base = declarative_base(bind = engine)
#Example Table from the database.
class Temperature(Base):
tablename = 'temperature'
__table__ = Table(tablename, Base.metadata, autoload=True)
__doc__ = insp.get_table_comment(tablename)['text']
print(__doc__)
class Foo(object):
"""
Foo 1
Foo 2
"""
print(__doc__)
class Bar(object):
__doc__ = "Bar1 \n \nBar2"
print(__doc__)
Выход из
print(__doc__)
являются:
DBLine1 \n \n DBLine2
Foo 1
Foo 2
Bar1
Bar2
В документации по Foo и Bar все в порядке, но для объекта Temperature я получаю "DBLine1 n n DBLine2". Нет перевода строки, нет \ n.
Есть идеи, откуда это может прийти? Возможно набор символов Базы данных?
Это действительно хорошая идея делать то, что я намерен? Я начинаю сомневаться в этом.