Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 15, 2011 19:19:26

CrashIt
От:
Зарегистрирован: 2011-09-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Глобальная переменная для работы с БД

Здравствуйте. В моем проекте несколько модулей, каждый из которых обращается к MySQL (через расширение MySQLdb). Мне хотелось бы вынести подключение к БД в отдельный файл, в котором бы хранились все настройки подключения (имя БД, имя пользователя, пароль), то есть он должен содержать следующие строчки:

db = MySQLdb.connect(host='localhost', user='root', passwd='mypasswd', db='mydb', charset='utf8')
cursor = db.cursor()

Как потом получить доступ к переменной “cursor” в других модулях?



Офлайн

#2 Сен. 15, 2011 19:45:46

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Глобальная переменная для работы с БД

from module_aaa import db,cursor :)



Отредактировано (Сен. 15, 2011 19:46:35)

Офлайн

#3 Сен. 15, 2011 20:07:31

CrashIt
От:
Зарегистрирован: 2011-09-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Глобальная переменная для работы с БД

doza_and, то есть объект “cursor” будет для всех модулей одинаковым?



Офлайн

#4 Сен. 15, 2011 20:38:58

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Глобальная переменная для работы с БД

да, модуль грузится один раз



Офлайн

#5 Сен. 15, 2011 21:47:53

CrashIt
От:
Зарегистрирован: 2011-09-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Глобальная переменная для работы с БД

from db import cursor
cursor.executemany('…')

работает, но “Eclipse” на вторую строчку жалуется, выдает “Undefined variable from import: executemany”



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version