Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Базы данных > MySQLdb. Вывод результатов


Автор: zluka 7.2.2008, 21:53
Вобщем, здравствуйте. Хотел, чтобы Вы подсказали как это можно (а главное через что) реализовать? Т.к я в этом зеленый.. Просто нужно вывести результаты работы запроса, аля "SELECT * FROM users" в хтмл-страничку. Может мне подойдут какие-нибудь фреймворки? Или есть решение попроще? Если можно с примером.
Спасибо.

Автор: wonderfulll 8.2.2008, 11:33
я бы делал с http://www.sqlalchemy.org

http://www.sqlalchemy.org/docs/04/intro.html#overview_tutorials
http://www.rmunn.com/sqlalchemy-tutorial/tutorial.html маленько устаревший но более понятный для начинающего

пример кода под твой конкретный случай
Код

from sqlalchemy import *

db = create_engine('mysql://username:password@localhost/mydb')

metadata = MetaData(db)

users = Table('users', metadata, autoload=True)

s = users.select() 
rs = s.execute() 
row = rs.fetchone() 

#этот цикл заворачиваем в html
for row in rs:
    #здесь перечисляем то что нужно вывести в html
    print row.name

Автор: zluka 8.2.2008, 14:28
1. Нужно именно MySQLdb. SQLAlchemy - не подходит.
2. Даже если и так, то я не понял, что значит #этот цикл заворачиваем в html? Каким образом заворачиваем?

Автор: wonderfulll 9.2.2008, 11:23
ну SQLAlchemy  и работает с Mysql через MySQLdb

заворачиваем значит просто формируем какой-нибудь string с html кодом
Код

html_body = ""

html_header = "<head>\n\
                <meta http-equiv='Content-Type' content='text/html; charset=utf-8'>\n\
                <head>\n\
                <title>names</title>\n\
                </head>\n\
                <body>\n\
                <table>\n\
                <tr>"

for row in rs:
    html_body += "<td>%s</td>" % row.name
    
    
html_footer = "</tr>\n\
                </table>\n\
                </body>\n\
                </html>"

html = html_header + html_body + html_footer
#дальше просто записываем  в html




Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)