Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "вложить" любой файл в базу(проект на TurboGears), файлы 
V
    Опции темы
pythonwin
Дата 16.5.2006, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 14
Всего: 36



Можете помочь?

Мне нужно "вложить" любой файл в базу (PostgresSQL через SQLObject)
В Zope есть такая возможность - может использовать часть кода оттуда?

P.S. 
Это нужно для проекта написанного при помощи TurboGears
основный форматы файлов которые нужно "вложить" в базу:

Код

doc, xls, jpg, gif, rtf, html, tar.gz, rar, zip, exe
 
PM WWW GTalk Jabber   Вверх
J2A
Дата 16.5.2006, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 17.11.2005
Где: Омск

Репутация: 16
Всего: 18



Цитата(pythonwin @ 16.5.2006,  16:25)
Можете помочь?

Мне нужно "вложить" любой файл в базу (PostgresSQL через SQLObject)
В Zope есть такая возможность - может использовать часть кода оттуда?

ZODB -- объектная БД, PostgreSQL -- реляционная. AFAIK, PostgreSQL умеет BLOB'ы, умеет ли это SQLObject -- не знаю. Как вариант -- кодировать в base64 и сохранять как текст. 
--------------------
Be easy, stay cool
PM MAIL WWW Jabber   Вверх
pythonwin
Дата 16.5.2006, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 14
Всего: 36



Цитата

ZODB -- объектная БД, PostgreSQL -- реляционная.

Спасибо! Но я об этом уже знаю, хотя например через SQLObject в PostgreSQL можно записать почти любой объект питона(проблем пока не было).
Объявление класса
Код

class class_1(SQLObject):
    m1 = PickleCol()

создание записи:
Код

class_1(m1=obj1)

А вот obj1 может быть и списком, и стракой, и каким-нибудь объектом вашего класса.
Цитата
 AFAIK, PostgreSQL умеет BLOB'ы, умеет ли это SQLObject -- не знаю. Как вариант -- кодировать в base64 и сохранять как текст.

А подробней можете объяснить? 
PM WWW GTalk Jabber   Вверх
J2A
Дата 16.5.2006, 20:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 17.11.2005
Где: Омск

Репутация: 16
Всего: 18



Цитата(J2A)
 AFAIK, PostgreSQL умеет BLOB'ы, умеет ли это SQLObject -- не знаю.

Умеет. http://www.sqlobject.org/SQLObject.html#column-types

Цитата(J2A)
Как вариант -- кодировать в base64 и сохранять как текст.

http://docs.python.org/lib/module-base64.html

Цитата(pythonwin @ 16.5.2006,  17:37)
А подробней можете объяснить?

RTFM?

P.S. http://www.opennet.ru/openforum/vsluhforumID9/3846.html
P.P.S. Стань google certified search engineer сейчас  smile 
  

Это сообщение отредактировал(а) J2A - 16.5.2006, 20:12
--------------------
Be easy, stay cool
PM MAIL WWW Jabber   Вверх
pythonwin
Дата 23.5.2006, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 14
Всего: 36



Проблему решил!!!

model---------

class ForFiles(SQLObject):
    ....
    file=PickleCol()

kid---------

<input type="file" name="attach_file"/>

сонтролерсы:

import cgi # а можно и из CherryPy вытащить у него тоже есть
class Root (..):
    .....

    def files(self, **kw):
         attach_file=kw['attach_file']
         ForFiles(.., file=attach_file) 
PM WWW GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1331 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.