Обновить
0
0
Денис@Bteam

Пользователь

Отправить сообщение
Ужасная форма для регистрации и карта там.
Если геомагнитная статистика начнет собираться в таких масштабах то это даст мощный толчок картографическим сервизам. Не хватает только определение ускорения свободного падения чтобы получать информацию о подземных недрах.
Пройдешь так в лесу пару десятков километров с запущенным приложением на смартфоне и хоп получаешь отчет «залежи минеральных ископаемых в кол-ве: N»
Не знаю что тут происходит но вот хорошая штука для отображение данных основанных на времени square.github.com/cubism/
Там даже две версии серверной части поддерживается.
Ефим «Велотрек» Бушманов хочет срок.
у JavaScript-Garden есть перевод shamansir.github.com/JavaScript-Garden/
Какой модуль используете для вычислений control или scipy.signal?
Для меня идеал форума это softwaremaniacs. А на php привлекает vanilla.
А phpBB для меня уже винтаж.
Я думаю что когда начинаешь писать такие вещи на jQuery, то пора сделать вывод что из него ты вырос и идти дальше.
Например в dojo или extJs.
Да, и про dojo тоже.
Пытаюсь найти еще информацию по теме выкладывания новой версии на продакшен, но не могу найти.

Подскажите ключевые слова :)
Ошибка то в первом примере в том что это невалидный JSON из-за лишней запятой?
Это всё есть в dojo.

А сайт какой то очень странный, при скролинге шрифт получается разорванным вдоль пополам со смешением.(Ubuntu, Chrome)
Статья супер, очень элегантно и крисиво.
Я рисую графики в dojo при помощи dojango. Но получается это громоздко.
А за django-qsstats-magic отдельное спасибо
Статья отличная, а вы пахоже не заметили что «Данная статья будет полезна прежде всего новичкам»
Как это добро как под ubuntu? Или обычная мышь\клава получается?
Какой конфигурации vds нужен для небольшого django проекта?
Использую terminus как в консоли так и в редакторе.
jQuery используют почти 30% сайтов, отслеживаемых builtwith.com. Выбор другой библиотеки будет свидетельствовать о менее компетентных разработчиках, менее доступном коде и небольшом сообществе поддержки.

Тут же нет логики
Привет всем, в своем веб-приложении мне необходимо изменять и добавлять данные по еще пока не известной модели, как через ajax так и через обычную форму.
Естественно я использовал modelform'ы, и очень удобную разработку под название dojango. Dojango элементарно устанавливается и теперь наши django виджеты превращаются на выходе в виде dojo виджетов c той валидацией что мы определили в модели\форме.
Теперь осталось просто вывести форму в виде html — form.as_ul(), и ждать ответа.

Dojo виджеты нам обеспечат валидацию на стороне клиента, из нашей формы без грамма кода. А серверную валидацию надо обеспечить нам.

Вот мой код для вывода формы\валидации и оправки ошибок\и если нет ошибок то перенаправления на объект.
Боюсь что код не прапарсится, вот ссылка на него
def show_form(request,oper,id=None):
#print request.path
import newdisp.whs.models as models # Все модели берем, и доставать нужную будем через getattr
try:
f=getattr(models,oper+'_form') # Берем
except AttributeError,e: #Ловим неправильные название форм
raise Http404('Page not found') # как вариант возвращять json({'status':'error'})

if 'id' in request.POST: # Переменые в запросах приходят строками, делаем в int
id = int(request.POST['id'])

if id is None: #Если нет айди значит добавление
m=getattr(models,oper)() # Берем модель, и вызываем ее без параметров, что означает пустому экземпляру.
else: # Значит изменение
id=int(id) #еще раз
try:
m=getattr(models,oper).objects.get(pk=id) # Берем модель с данными которые будем изменять
except ObjectDoesNotExist,e:
raise Http404('Page not found')


if request.method == 'POST': # Если пост то обрабатываем данные, если гет то вывод html формы
post=request.POST.copy() # Копируем массив, ибо request — read only
if 'price' in post.keys(): # Заменяем замечательные русские запятые в float числах
post['price']=post['price'].replace(',','.')
if 'delivery' in post.keys():
post['delivery']=post['delivery'].replace(',','.')

form = f(post,instance=m) # Создаем форму и наполняем ее даными из модели

if form.is_valid(): # Если ошибок нет, то сохраняем и редиректив на ссылку
# где ей отдадут json данные модели
inst = form.save()
return HttpResponseRedirect('/whs/id/%s/%d' % (oper,inst.id))
else: # Если ошибки, вернуть json со статусом ошибки и сообщения ошибки
re={'status':'error','message':form.errors}
return HttpResponse(json(re),mimetype=«application/json»)
else:
form = f(instance=m) # вывод html формы
if request.is_ajax(): # Если jax то вернуть просто html, я оберну ее в форму на стороне клиента
return HttpResponse(form.as_ul(),mimetype=«text/html») #Если ajax срем говый вариантик

# Если обычный, то обрабатываем. Это надо сделать через шаблон.
re=u' '
re+=u''
re+=form.as_ul() # Вывести ее как список
#re+=u''
re+=u''
re+=u''
return HttpResponse(re,mimetype=«text/html»)

На стоне клиента надо написать код на dojo, чтобы забрать форму, пропарсить его dojo.parser, и создать xhtPost формы.
При попытке отправки формы, dojo проверит данные еще раз на соответсвие типам, и отправит данные.
Дальше их поймает django, проверит на логичность(например повторение уникальных значений) и сгенерирует текст ошибки на чистом русском языке, что мы и отправим обратно форме в виде json
Например:
{
status: «error»
-message: {
-number: [
«Накладная с таким № документа уже существует.»
]
}
}
Осталось растолкать это по полям формы dojo.

if (result.status == 'error') {
for (var i in result.message) {
var input = dijit.byNode(dojo.query('.dijit [name="' + i + '"]', this.form.containerNode)[0].parentNode.parentNode);
input.state = 'Error';
input._setStateClass();
dijit.setWaiState(input, 'invalid', 'true');
input._maskValidSubsetError = true;
dijit.showTooltip(result.message[i], input.domNode, input.tooltipPosition);
}
}
else {
alert('СХОРАНЕНО');
//return result;
}
Вот клиентская валидация:

А вот уже ответ с сервера(заметьте сообщения создано автоматически и «из коробки» django)
Дело не в инсточниках, дело в поиске же.

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность