Уведомления

Группа в Telegram: @pythonsu

Уведомления

  • Found 3484 posts.

Django » Вывод своей таблицы в админке » Март 21, 2010 14:29:10

Здавствуйте.
Подскажите пожалуйста, как лучше(проще/красивее) вывести свою таблицу как админка выводит. У меня есть очень большой и сложный raw-SQL и результаты хотелось бы вывести в админке, и при этом заюзать бы фильтры даты.
Я вот думаю как это реализовать, или сделать как-то обьект как модель, и дальше попробовать его показать стандартными средствами, или может сделать как-то ПроксиМодель… Или просто написать свою вьюху что и фильтры будет сама обрабатывать, а результат лишь вывести в темплейты админки.
Как бы вы решили эту задачу? А может есть где-то аппликейшн что как-то облегачает эту работу? Или есть какие-то встроеные способы?

Django » Упрошение urls.py » Март 19, 2010 19:05:33

есть след:
import Resource

urlpatterns = patterns(
'',
url(r'^a/(?P<id>\d+)$', Resource(a),{'emitter_format': 'ext-json'}),
url(r'^b/(?P<id>\d+)$', Resource(b),{'emitter_format': 'ext-json'}),
url(r'^с/(?P<id>\d+)$', Resource(b),{'emitter_format': 'ext-json'}),
}
и тп …

Хочется обойтись 1-ой строчкой:
т е например:
url(r'^(.*)/(?P<id>\d+)$', Resource(b),{'emitter_format': 'ext-json'}),
Как я понимаю нужно пропустить через view.
url(r'^(.*?)/(?P<id>\d+)$', views.test,{'emitter_format': 'ext-json'}),
Но как правильно написать этот view ? Ведь в данном случае $1 - это строка а нужно получить объект по строке .. + передать этот объект и параметр {'emitter_format': ‘ext-json’} Resource и вернуть ответ ..

Флейм » Вакансия в СПб (Python, Django) » Март 19, 2010 14:56:59

На постоянную работу в Санкт-Петербурге
(в офис, ст.м. “Ладожская”, “Пр. Большевиков”)
требуется веб-разработчик (Python, Django)

Условия:
Постоянная работа, полный рабочий день, 10:00-19:00
Оформление по ТК,
Заработная плата: на исп. срок 35 т.р. (2 мес.), после 40 т.р.

Обязанности:
Разработка и поддержка веб-портала со стадии стартап.
Требования к кандидату:
Мужчина, 22-30 лет
Высшее техническое образование
Опыт работы от 1 года, участие в работающих проектах,
которые можно посмотреть.

Обязательно:

Хорошее знание Python, опыт разработки веб-приложений на Python, в идеале на фреймворке Django.
JavaScript, AJAX, XML, XHTML, PostgreSQL, хорошие навыки проектирования БД,…
Хорошее понимание ООП, CSS, табличной и дивовой вёрстки (основная вёрстка не входит в обязанности, только мелкие доработки); понимание архитектуры MVC, опыт работы с высоконагруженными проектами, умение самостоятельно принимать архитектурные решения,
Личные качества: коммуникабельность, умение планировать работу, самомотивация, высокий уровень самостоятельности и автономности в работе, желание искать и находить решения новых задач и принимать решения на своём участке работы, ответственность за результат, умение работать в команде, инициативность, разумный креатив. Главное – это адекватность и желание работать!

Желательно:
Навыки работы с Linux: настройка веб-сервера, установка и поддержка проекта на продакшн-сервере,
опыт работы с Google Maps,
опыт работы с SVN

Владимир,
(812) 928-77-22

Django » Вакансия в СПб (Python, Django) » Март 19, 2010 14:54:10

Прошу прощения, если пишу не в ту ветку, но ветки “Работа” и т.п. не нашёл.

На постоянную работу в Санкт-Петербурге
(в офис, ст.м. “Ладожская”, “Пр. Большевиков”)
требуется веб-разработчик (Python, Django)

Условия:
Постоянная работа, полный рабочий день, 10:00-19:00
Оформление по ТК,
Заработная плата: на исп. срок 35 т.р. (2 мес.), после 40 т.р.

Обязанности:
Разработка и поддержка веб-портала со стадии стартап.
Требования к кандидату:
Мужчина, 22-30 лет
Высшее техническое образование
Опыт работы от 1 года, участие в работающих проектах,
которые можно посмотреть.

Обязательно:

Хорошее знание Python, опыт разработки веб-приложений на Python, в идеале на фреймворке Django.
JavaScript, AJAX, XML, XHTML, PostgreSQL, хорошие навыки проектирования БД,…
Хорошее понимание ООП, CSS, табличной и дивовой вёрстки (основная вёрстка не входит в обязанности, только мелкие доработки); понимание архитектуры MVC, опыт работы с высоконагруженными проектами, умение самостоятельно принимать архитектурные решения,
Личные качества: коммуникабельность, умение планировать работу, самомотивация, высокий уровень самостоятельности и автономности в работе, желание искать и находить решения новых задач и принимать решения на своём участке работы, ответственность за результат, умение работать в команде, инициативность, разумный креатив. Главное – это адекватность и желание работать!

Желательно:
Навыки работы с Linux: настройка веб-сервера, установка и поддержка проекта на продакшн-сервере,
опыт работы с Google Maps,
опыт работы с SVN

Владимир,
(812) 928-77-22

Python для новичков » (Scaner+FreeBSD)*Python == HappyUser » Март 19, 2010 14:52:51

Здравствуйте. Есть сканер, и есть фряшный сервер, на котором крутятся: web-сервер, файлопомойка и много другой полезной мелочи.
Есть желание заставить фряху сканировать нечто сканером и класть это нечто на FTP. Сам сканер прикрутил почти без проблем, он таки умеет сканировать. Вопрос вот в чём: как питоновский скрипт заставить запускать скрипт на sh (наиболее простой вариант, на мой взгляд)?
И ещё: наиболее элегантный способ попросить питон ждать нажатия на любую клавишу на клавиатуре (кнопочку “scan” на самом сканере фряха презрительно игнорирует)?
Занятая консоль-не страшно. Администрирую сервер по ssh.
while True:
fake = input("")
---запуск sh скрипта---
- это ведь не лучший способ, правда?

———————–UPDATE———————–
Первый вопрос отпал.
subprocess.Popen("scan_and_put_to_ftp.sh")
———————–UPDATE———————–
Хм… Всё это, видимо, лучше сделать сразу на sh…

Django » Редактирование контента динамических страниц » Март 16, 2010 20:00:34

Приветствую всех.
Такая проблема - нужно дать пользователям возможность редактировать в админке содержимое одного абзаца на динамической странице. Обрабатывать ее как flatpage не получится, т.к. на странице есть динамический контент и работает довольно сложный veiw.
Как это можно все-таки сделать?
Спасибо.

Django » debug на сервере » Март 15, 2010 21:25:09

Какие есть удобные средства методики дебага на сервере?
Я когда разрабатываю у себя на локал всегда вижу вывод сервера, и там обычными принтами дебажу, но иногда бывают проблемы именно на сервере, понятно что можно выводить в файл и далее его смотерть, но тут лишнии действия что нужно лезть к файлу и тп. Может какие есть варианты попроще чтобы увидеть сразу вывод?
Вопрос кто какими методиками для этого пользуется?

Mobile Python » windows mobile камера gps » Март 15, 2010 08:11:07

Здравствуйте
Подскажите, есть ли модули python для работы с фотокамерой и gps на платформе
Windows mobile 5-6 ?

Инструментальные средства разработки » Linux Eclipse+Aptana "толстая" нижняя панель » Март 14, 2010 21:11:54

Ubunta 9.10 с Eclipse из репозирия + Pydev + Aptana.
Кнопка с “Sign in” внизу где-то на 20% увеличивает высоту всей нижней панели. При переключении между перспективами надпись исчезает, а место занимаемое остаётся.
Как её можно отключить? А то раздражает сильно :)

UPD: как решение можно отредактировать .gtkrc-2.0 (сделать нормальную высоту панельки), но можно ли там задать стиль для конкретного приложения, а не для всего Гнома в целом.





Network » SMTP и соксы » Март 12, 2010 17:56:27

Необходимо отправлять почту через smtp, используя соксы, ну и http-прокси желательно. Есть где-нибудь такие модули? Или может как-то можно стандартный smtplib подправить на использование соксов?

Python для новичков » работа с именованным пайпом » Март 9, 2010 08:11:50

есть пайп. нужно его
1 - открыть;f = open(some_pipe, ‘r’)
2 - прочитать; s = f.readline()
и на 1 и на 2 прога виснет ожидая соединеня на том конце
Вопрос : как можно задать таймаут для чтения и открытия пайпа.

p.s. про alarm слышал но хочется обойтись без сигналов

GUI » urwid - создать большой текст » Март 8, 2010 15:38:03

Ковыряю библиотеку urwid. А в частности смотрю пример с сайта http://excess.org/urwid/examples.html
bigtext.py

Что-то для меня пока пример шибко тяжелый. Мне надо просто создать
ранее подготовленный текст, а в частности число, к примеру 1234564878,
и вывести на экран.

В примере показана куча лишнего и что-то выделить только создание текста,
без дополнительного мусора не получается.

Если кто работал с этим, помогите плиз куском просто примера.

Google App Engine » BlobProperty и Django » Март 8, 2010 15:29:05

Помогите пожалуйста с загрузкой картинок в BigTabl. Использую Django1.1
Вот простейшая модель
class Pic(db.Model):

pic = db.BlobProperty()
name = db.StringProperty()

def __unicode__(self):
return self.name


class PicForm(djangoforms.ModelForm):

class Meta:
model = Pic
В шаблоне
   <form action="/file/" method="post" enctype="multipart/form-data">
<table>{{ form }}</table>
<input type="submit" value="upload"/>
</form>
Как должен выглядеть вью? Такое вот не работает
def fileupload(request):
form = PicForm(request.POST, request.FILES)
if form.is_valid():
pic = request.get("pic")
name = request.get('name')
data = Pic()
data.pic = pic
data.name = name
data.put()
else:
return render_to_response('index.html', {'form': form} )

GUI » wxPython wxGrid » Март 5, 2010 01:00:06

1. Можно ли сделать так чтобы колонки занимали все доступное место?

2. Если текст не помещается полностью в ячейку по ширине, он переносился(в этой же ячейке, т.е. чтобы ячейка росла не в ширь, а в высоту)? Или как сделать чтобы в строке расставить переносы строк по заданной ширине в зависимости от шрифта и размера?

Python для новичков » Плагин Python для Intellij Idea » Март 4, 2010 15:39:24

Привет всем=) Ставил ли кто-нибудь плагин на Intellij Idea? Если да то как? Стандартным способом(загрузить и установить из иде) пробовал не проходит.

Pyramid / Pylons / TurboGears » отличия TG2 от pylons? » Март 3, 2010 06:35:37

собственно начал изучать pylons и неожиданно наткнулся на TG2 т.к. увидел, что он по сути включает в себя pylons - но беглое чтение документации не дало понимания в чем же основные отличия - только в том, что есть дополнительная прослойка частично поддерживающая апи TG1?

в доке есть такой текст:
Why not just merge with Pylons?
Well, Pylons is committed to being officially template engine agnostic, ORM agnostic, etc. On the other hand TurboGears is committed to providing a “Full-Stack” for web development. So, the two communities have different, but compatible priorities. If you think about it Pylons provides a great set of tools for building a full-stack framework, and people had been asking for a full-stack Pylons implementation for a long time. And TurboGears 2 will provide that.

что же тут подразумевается под full-stack?

Инструментальные средства разработки » Eclipse+PyDev = python 3.1 как? » Март 2, 2010 14:33:19

Не получается добавить интерпритатор =(. Подскажите как это сделать под Mac.

Python для новичков » Помощь. Python 3.1. многопоточность. » Март 1, 2010 18:15:22

Написал быдлокод. Хочу сделать многопоточность, но хоть убей не получается.
И вот, прошу вас помочь переделать мой код под многопоточность.
Сам код:

import os
import sys
import gui
import urllib.request
import urllib.parse
import re
import codecs
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from base64 import b64encode
import time, random
from PyQt4 import QtGui, QtCore

vk = urllib.request.build_opener()


def send_cap(key, fn):
data=open(fn, 'rb')
s = b64encode(data.read())
image = s.decode('latin-1')
params = urllib.parse.urlencode({'method': 'base64', 'key': key, 'body':image, 'ext':'jpg'})
f = urllib.request.urlopen("http://antigate.com/in.php", params)
res = str(f.read().decode())
print(res)
cap_id = re.search('\d+',res)
if cap_id == None:
return False
else:
idc = cap_id.group(0)
return idc



def get_cap_text(key, cap_id):
''' Ожидаем и получаем текст капчи '''


time.sleep(5)

# получаем результат
res_url= 'http://antigate.com/res.php'
res_url+= "?" + urllib.parse.urlencode({'key': key, 'action': 'get', 'id': cap_id})
flag=False
while flag==False:
res= urllib.request.urlopen(res_url).read()
res = res.decode()
if res == 'CAPCHA_NOT_READY':
time.sleep(1)
else:
flag=True

res= re.split('[\W]+',res)
if len(res[0]) == 2:
return res[1]
else:
return ('ERROR', res[0])


def login (mail, pas):
global vk
res = urllib.request.urlopen('http://login.vk.com/?act=login&email='+mail+'&pass='+pas+'&expire=&vk=')
res= str(res.read())
if len(res)== 699:
s = re.search(r" name=\\\'s\\\' id=\\\'s\\\' value=\\\'(.*?)\\\' />",res)
sid = s.group(1)
cookie = 'remixap=1; remixlang=0; remixchk=5; remixsid='+sid;
vk.addheaders = [('cookie:', cookie)]
else:
cookie=0

return cookie

def displaymatch(match):
if match is None:
return None
return '<Match: %r, groups=%r>' % (match.group(), match.groups())





class MyClass(QMainWindow,
gui.Ui_mainWindow):
def __init__(self, parent=None):
QMainWindow.__init__(self,parent)
self.setupUi(self)

def capch(w,res):
global cs,line
print('hello capcha!')
s = re.findall(r'\d+',res)
cs = s[1]
file = str(random.randint(100, 1000)) + '.jpeg'
print('We use antigate')
url = 'http://vkontakte.ru/captcha.php?sid='+cs
urllib.request.urlretrieve(url, file)
res = send_cap(w.lineEdit_3.text(), file)
code = get_cap_text(w.lineEdit_3.text(), res)
os.remove(file)
params = urllib.parse.urlencode({'act': 'register', 'first_name': w.lineEdit.text(), 'last_name': w.lineEdit_2.text(),'regemail':line, 'regpass':w.lineEdit_4.text(),'sex':'2','timezone':'300','by_login':'0','captcha_sid':cs, 'captcha_key':code})
res = urllib.request.urlopen('http://vkontakte.ru/register.php',params)
res= str(res.read().decode('cp1251'))
print(res)
if res=='{"do_login":"1"}':
w.textBrowser.insertPlainText("Успешно зарегестрирован"+line+":"+w.lineEdit_4.text()+"\n")
f = open('log.txt','a')
f.write(line+":"+w.lineEdit_4.text()+"\n")
f.close()

def bal(w):
res = urllib.request.urlopen('http://antigate.com/res.php?key='+w.lineEdit_3.text()+'&action=getbalance')
res = res.read().decode('utf-8')
w.textBrowser.insertPlainText("Ваш баланс:"+res+"\n")


def st(w):
global line
with open('emails.txt', 'r') as f:
data = f.read()
f.close()
m = re.split('[\n]+',data)

for line in m:
print(line)
params = urllib.parse.urlencode({'act': 'register', 'first_name': w.lineEdit.text(), 'last_name': w.lineEdit_2.text(),'regemail':line, 'regpass':w.lineEdit_4.text(),'sex':'2','timezone':'300','by_login':'0'})
res = urllib.request.urlopen('http://vkontakte.ru/register.php',params)
res = res.read().decode('utf-8')
c = re.search('captcha_sid',res)
if (c == None):
print('1')
else :
print('2')
print(res)
w.capch(res)






app = QApplication(sys.argv)
w = MyClass()
w.connect(w.pushButton,SIGNAL("clicked()"),w.st)
w.connect(w.pushButton_2,SIGNAL("clicked()"),w.bal)

w.show()
app.exec_()
Gui, если требуется, тоже сброшу.

Django » Сортировка в приложении » Март 1, 2010 14:57:35

Доброго времени суток!
Извините за нубский вопрос - но найти не могу ответ.

1)Как отсортировать в приложении список классов Моделей по алфавиту в обратном порядке?
2)Как перевести название модели на русский язык(интернационализировать) ?
Спасибо!
ЗЫ: Я так понимаю нужно в модели admin.py чето прописывать.

Инструментальные средства разработки » Eclipse uncollapse code » Фев. 28, 2010 14:09:14

С ума сейчас сойду. Нe могу понять что заставляет pydev/eclipse раскрывать периодически код который был схлопнут (collaps).

Сначала думал, что нажимаю какие-то грячие кнопки. Зашел в настройки и вообще разбиндил все что может делать uncollaps. Не помогло.

Очень прошу, помогите.
Уже глаз дергается от пролистывания полотнин гуишного кода.