Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Web
  • » [webpy] События при нажатии кнопок [RSS Feed]

#1 Авг. 14, 2013 04:48:56

aspire89
От:
Зарегистрирован: 2010-01-18
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

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



Офлайн

#2 Авг. 14, 2013 05:45:00

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

aspire89
FishHook спасибо, только не понятно на какой url отправлять, и если вставить в тег кнопки onclick, то страница даже не грузится
Глянул, что за шаблонизатор использует web.py, ругается он на знак доллара, надо его заэкранировать
тынц
то есть так сделай
<button class="...." onclick="$$.post('formpage', {data: 'button1'})">



Офлайн

#3 Авг. 14, 2013 16:30:00

aspire89
От:
Зарегистрирован: 2010-01-18
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

FishHook
то есть так сделай
Ага, так работает, тег <form> удалил, POST запросы отправляются. Только сервер в ответ 500 ошибку выдает. И соответственно я не получаю data.
Сервер у меня запускается на localhost:8080
urls = ('/','root')
app = web.application(urls, globals())
render = web.template.render('templates/')
class root:
    def GET(self):                
            return render.mytitle("Robot")
            
    def POST(self):
                i = web.input()
                if i.form_action == 'decrease speed forward':
                    print 'decrease speed forward'
                elif i.form_action == 'forward':
                    print 'forward'
                elif i.form_action == 'increase speed forward':
                    print 'increase speed forward'
                else:
                    print '+++++++++++++++++'
код кнопки из html файла
<button onclick="$$.post('/', {data: 'decrease speed forward'})">
Ошибка
Request URL:http://localhost:8080/
Request Method:POST
Status Code:500 Internal Server Error
Request Headersview parsed
POST / HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Content-Length: 27
Accept: */*
Origin: http://localhost:8080
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: http://localhost:8080/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8,ru;q=0.6
Form Dataview parsed
data=decrease+speed+forward
Response Headersview parsed
HTTP/1.1 500 Internal Server Error
Content-Type: text/html
Transfer-Encoding: chunked
Date: Wed, 14 Aug 2013 13:26:45 GMT
Server: localhost



Офлайн

#4 Авг. 14, 2013 16:43:00

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

а более информативного сообщения об ошибке нету?



Офлайн

#5 Авг. 14, 2013 16:45:21

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

Я с web.py не знаком, но POST-функция у тебя ничего не возвращает, ИМХО так точно не должно быть.



Офлайн

#6 Авг. 14, 2013 17:02:42

aspire89
От:
Зарегистрирован: 2010-01-18
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

FishHook
а более информативного сообщения об ошибке нету?

Получается ошибка в функции POST, так как я форму удалил.



Офлайн

#7 Авг. 14, 2013 17:37:08

aspire89
От:
Зарегистрирован: 2010-01-18
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

Исправил на

    def POST(self):
            s = web.input().data
            print s
            return
И все заработало
Всем большое спасибо.



Офлайн

#8 Авг. 14, 2013 18:25:21

aspire89
От:
Зарегистрирован: 2010-01-18
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

[webpy] События при нажатии кнопок

Офтопик.
Залил все в raspberry pi, она у меня же и точкой доступа wi-fi работает, а к ней подключена arduino с двумя моторами, команды от нажатия кнопок уходят в arduino по последовательному интерфейсу, а там разбираются и начинают крутить гусеницы робота. Осталось только написать прошивку для arduino. А страничка с кнопками отлично работает и на iPhone и iPad подключенными по wi-fi к raspberry pi.
Жду аккумуляторы и игрушка для взрослых готова.
Вот и все, ради чего это писалось. :D



Офлайн

  • Начало
  • » Web
  • » [webpy] События при нажатии кнопок[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version