
Mikhail
03.08.2017
06:06:13
не нужно
небольшой секрет Полишинеля: получить SSL можно без покупок сертификатов, let's encrypt и даже без настройки сервера
достаточно воспользоваться услугами cloudflare

Massimo
03.08.2017
06:08:25
Почему аякс возвращает мне int если там данные типа str?

Google

Massimo
03.08.2017
06:08:52
Щас сек

Mikhail
03.08.2017
06:09:03
как аякс может что-то возвращать? Он же просто транспорт

Massimo
03.08.2017
06:09:52
https://dpaste.de/B71w
function create_post() {
console.log("create post is working!") // sanity check
console.log($("#post-driver").val())
Value там Vasya а возвращает 1. 1 — это id pk

AbdulAziz
03.08.2017
06:11:11

Mikhail
03.08.2017
06:13:39
не дошло

AbdulAziz
03.08.2017
06:14:25
имею ввиду понял что окружение просто окружени а работать можно с любой папкой

Mikhail
03.08.2017
06:14:47

AbdulAziz
03.08.2017
06:15:01
ок сори

Dan
03.08.2017
06:15:40

Massimo
03.08.2017
06:16:43
ДА
Вот пост инфа
price = '0'
driver = '2'
Но дравйвер там string а не integer

Google

Massimo
03.08.2017
06:17:33
) Но тут проблема в другом
Он выкидывает мне пк водителя, а не имя, думаю как получить имя от него

Mikhail
03.08.2017
06:18:45
сдаюсь
больше даже не буду пытаться понять, о чём речь
то ли в серверной части неправильно, то ли в клиентской. Даже намёка нет о сути проблемы

Massimo
03.08.2017
06:21:56

Mikhail
03.08.2017
06:22:10
ещё раз. Форма ничего возвращать не может!
что-то возвращать может функция. По определению
что такое форма - вообще непотнятно. Класс, описывающий набор полей?

Massimo
03.08.2017
06:23:05
Мы говорим о форме на фронте? Если о фронте то форма имеет value которое забирает аякс и забирает с собой в великолепную страну бэка

Mikhail
03.08.2017
06:23:38
value имеет input на клиенте
а возвращать его, например, может .val() у жкваери

Massimo
03.08.2017
06:23:59
Ну да

Mikhail
03.08.2017
06:24:07
эцсамое

Massimo
03.08.2017
06:24:28
Да, и он возвращает мне почемуто не "VASYA" как в инпуте, а "1".

Mikhail
03.08.2017
06:24:31
правильно сформулированный вопрос несёт в себе как минимум половину ответа
консоль откройте браузерную
и напишите там $('#field_name').val()
неужели в консоли напечатается "1", хотя в инпуте с айдишником field_name прямо видно, что написано VASYA?
не верю

Google

Massimo
03.08.2017
06:26:42
Щас заскриню
Водитель: Vasya
function create_post() {
console.log("create post is working!") // sanity check
console.log($("#post-driver").val())
}
Вот функция

Mikhail
03.08.2017
06:28:37
а $('#post-driver') это что такое?

Massimo
03.08.2017
06:29:19

Mikhail
03.08.2017
06:30:30
нет, это не ID селектора. ID селектора - это post-driver. Текстовая строка

Massimo
03.08.2017
06:31:16
jQuery синтаксис?

Mikhail
03.08.2017
06:35:05
я тоже фигню написал и разволновался
нет такого понятия, как ID селектора
есть понятие "селектор". То бишь критерий поиска

Massimo
03.08.2017
06:36:25

Mikhail
03.08.2017
06:36:31
$('#post-driver') - это инстанс жквери, который ссылается на элемент (на самом деле, коллекцию элементов), заданный в селекторе
так, продвинулись. Это селект

Massimo
03.08.2017
06:40:16

Mikhail
03.08.2017
06:46:10
дык а это
у селекта вроде бы option value?
значение селекта берётся из value выбранной option, а то, что написано в лейбле роли не играет
щас как окажется на поверку, что сгенерированный код там - что-то типа
<select id="post-driver">
<option value="1">Vasya</option>
</select>

Massimo
03.08.2017
06:48:56

Google

Mikhail
03.08.2017
06:49:06
значит, всё правильно
так и должно быть

Massimo
03.08.2017
06:50:55
А как value поменять на имя? Это нужно в models или в forms лезть?

Mikhail
03.08.2017
06:51:14
а зачем?
менять модели, формы и так далее нужно исключительно для изменения логики работы приложения
а если же данные одни и те же, просто их нужно по-разному показать, то нормальные люди бизнес-логику не переписывают

Massimo
03.08.2017
06:52:52
А как сделать чтобы он брал тогда не val а то, что <option>имя</option>?

Mikhail
03.08.2017
06:53:23
$('#post-driver :selected').text() - что-то типа такого

Admin
ERROR: S client not available

Mikhail
03.08.2017
06:53:56
уверен, есть ли псевдокласс :selected. Если нет, то селектор ```#post-driver option[selected]```должен сработать

Dan
03.08.2017
06:54:45
а вы чего хотите получить ?

Massimo
03.08.2017
06:57:37

Dan
03.08.2017
06:57:52
value или text ?

Massimo
03.08.2017
06:58:58
ну value он выдает мне нумерацию

Mikhail
03.08.2017
06:59:28
не нумерацию он выдаёт, а реальное значение поля
то, что важно программе
человеку же интереснее увидеть лейбл

Massimo
03.08.2017
07:00:32

Mikhail
03.08.2017
07:00:49
поэтому нужно брать не значение (value) селекта, а текст внутри выбранной option в нём. Именно текст, т.е. .text()

Massimo
03.08.2017
07:01:11

Google

Сергей
03.08.2017
07:01:22

Mikhail
03.08.2017
07:01:43
потому что внимательнее надо быть

Massimo
03.08.2017
07:01:55
а ну может быть тогда во вьюхе поменять?

Mikhail
03.08.2017
07:02:16
не #post-driver
а #post-driver :selected
пробел, двоеточие, слово selected

Сергей
03.08.2017
07:02:33

Mikhail
03.08.2017
07:02:42
это нужно дописать в селектор

Massimo
03.08.2017
07:02:56
это нужно дописать в селектор
Почему тогда не сделать проще вот так
aj_driver = request.POST.get('driver')
driver = Driver.objects.get(pk=aj_driver)
Лол, но он не сработал)

Сергей
03.08.2017
07:04:09
Int(aj_driver)

Mikhail
03.08.2017
07:04:34
не надо плохому учить

Сергей
03.08.2017
07:04:50
Или вообще выведи принтом что такое aj_driver

Mikhail
03.08.2017
07:05:25
потому что шлю я, к примеру, driver='abcde'
и сервер валится с исключением
или даже просто не послать driver. То же самое будет

Сергей
03.08.2017
07:05:57

Mikhail
03.08.2017
07:06:14
для валидации пользовательского ввода придумали формы так-то