
b0g3r
13.12.2016
15:15:19
Проверь путь
Он ведет не в тот static

Tatiana
13.12.2016
15:15:54
можно попробовать вот так:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static/'),
]

gravizappa
13.12.2016
15:16:34
ну и в STATICFILES_DIRS не обязательно добавлять, если апп есть в INSTALLED_APPS и в STATICFILES_FINDERS есть AppDirectoriesFinder

Google

gravizappa
13.12.2016
15:17:04
вообще вручную указывать пути вот так дурное занятие

Panda
13.12.2016
15:17:21
я их копирую просто
это ж не деплой
и я прост пробую для учебных целей
ещ ёвот что пишет
This inspection highlights unresolved file references in string literals of 'extends' and 'include' Django tags.
я схитрил он у меня static в общем корне не видит, я css и js папки в static в приложении пока скинул
и теперь он их видит
но почему в корне папку не видит

Sergey
13.12.2016
15:29:56
мне нужно добавить настройки, которые обязательны только для web, и не нужно их использовать при manage.py shell, как такое реализовать?

Maxim robox
13.12.2016
15:36:29

Alex
13.12.2016
16:08:22
Пкм на папке темплейтов -> Make directory as -> Templates

Google

b0g3r
13.12.2016
16:10:35

Alex
13.12.2016
16:11:27
Стоп, а, бля, сори, спросонья не обратил внимание что там статика

Panda
13.12.2016
16:11:36
нене
все правильно
помогло

b0g3r
13.12.2016
16:12:16
А то что ты все скопировал

Panda
13.12.2016
16:12:45
Всмысле

Alex
13.12.2016
16:13:24
Это помогло показывать подсказки к пути темплейтов, но не статике.

Panda
13.12.2016
16:15:12
не, бутстрап тоже начал подгружаться из статики в корне
До этого не подгружался

Denis
13.12.2016
17:01:04
Есть спецы по джанге? Как мне заэкстендить collectstatic? Нужно впилить кастомный компилятор для статики, чтобы помимо сборки, потом ещё и запускался мой компилятор

Maxim robox
13.12.2016
17:05:25

Denis
13.12.2016
17:08:41
Спс, только я так пробовал, чё та не перезаписало команду. Попробую ещё разочек)))

Roman
13.12.2016
18:01:47
Вечер добрый. Есть вопрос, на странице есть 2 формы, данные отправляются на разные юрлы аяксом, при отправке с первой формы все ок, при отправке второй ругается на csrf токен. Разметка выглядит примерно так
<form1>{% csrf_token %}</form1>
<form2>{%csrf_token%}</form2> Правильно ли приписывать токен для второй формы или на странице он должен быть один? Либо после отправки пост запроса Аяксом 1 формы нужно генерить новый csrf и отдавать его в httpresponse?

Maxim robox
13.12.2016
18:06:08
Если правильно помню, то csrf токен достаточно долго не меняется.
Прописывать можно сколь угодно. Он ещё и в куках висит такой же.

Roman
13.12.2016
18:10:24
Тогда в моём случае нужен скорее всего новый токен генерить, поскольку выкидывает ошибку 403 на второй форме и в том и в том случае

Michael
13.12.2016
18:11:08
http://stackoverflow.com/questions/31866435/django-csrf-token-for-multiple-forms-and-ajax-requests-on-a-single-page

Roman
13.12.2016
18:18:33
Спс,возможно проблема в другом, буду разбираться

Google


Victor
13.12.2016
18:20:25
Вечер добрый. Есть вопрос, на странице есть 2 формы, данные отправляются на разные юрлы аяксом, при отправке с первой формы все ок, при отправке второй ругается на csrf токен. Разметка выглядит примерно так
<form1>{% csrf_token %}</form1>
<form2>{%csrf_token%}</form2> Правильно ли приписывать токен для второй формы или на странице он должен быть один? Либо после отправки пост запроса Аяксом 1 формы нужно генерить новый csrf и отдавать его в httpresponse?
In general, this can occur when there is a genuine Cross Site Request Forgery, or when Django's CSRF mechanism has not been used correctly. For POST forms, you need to ensure:
Your browser is accepting cookies.
The view function passes a request to the template's render method.
In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL.
If you are not using CsrfViewMiddleware, then you must use csrf_protect on any views that use the csrf_token template tag, as well as those that accept the POST data.
The form has a valid CSRF token. After logging in in another browser tab or hitting the back button after a login, you may need to reload the page with the form, because the token is rotated after a login.
In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL.


Roman
13.12.2016
18:26:50
Если у меня первая форма ссылается на функцию в которой прописана авторизация, я не смогу без перезагрузки страницы отправить данные со второй формы?
Или я что-то не так понял

Michael
13.12.2016
18:30:38
т.е. формы доступны и анонимусам?

Roman
13.12.2016
18:33:52
Да

parikLS
13.12.2016
18:36:21
Один токен оставь
Он не обязательно внутри формы может быть

Roman
13.12.2016
18:37:42
Это я понял, но ошибка осталась

parikLS
13.12.2016
18:37:55
Как вариант можешь воспользоваться декоратором ensure_csrf_cookie и отдельным урлом для получения токена
А ты аяксом когда отправляешь, ты хедер ставишь?
X-csrf-cookie

Roman
13.12.2016
18:42:49
Не понял вопроса. Запрос примерно такой: type: post,
url: ...,
data: { csrfmiddlewaretoken: *csrf значение инпута*,
....
}
Ну и ниже success
И error

parikLS
13.12.2016
18:52:48
и сейчас у тебя один такой инпут?
и в обеих запросах стоит значение из него?

Maxim robox
13.12.2016
19:35:02

arisu
13.12.2016
20:52:50
для аякса проверяется хидер x-csrftoken

Google

parikLS
13.12.2016
21:02:45
просто имхо с хедером все проще

arisu
13.12.2016
21:03:25
неможно
джанга если видит XHR - то проверяет заголовок
https://docs.djangoproject.com/en/1.10/ref/csrf/#ajax

Admin
ERROR: S client not available

parikLS
13.12.2016
21:14:52
неможно
# Check non-cookie token for match.
request_csrf_token = ""
if request.method == "POST":
try:
request_csrf_token = request.POST.get('csrfmiddlewaretoken', '')
except IOError:
# Handle a broken connection before we've completed reading
# the POST data. process_view shouldn't raise any
# exceptions, so we'll ignore and serve the user a 403
# (assuming they're still listening, which they probably
# aren't because of the error).
pass
if request_csrf_token == "":
# Fall back to X-CSRFToken, to make things easier for AJAX,
# and possible for PUT/DELETE.
request_csrf_token = request.META.get(settings.CSRF_HEADER_NAME, '')
из CsrfViewMiddleware

Boris
14.12.2016
00:18:45
Чуваки, просто спасибо что вы есть

Sergey
14.12.2016
08:06:02
Django OAuth Toolkit предоставляет только сервер oauth или клиент тоже?

Michael
14.12.2016
08:08:15
http://django-oauth-toolkit.readthedocs.io/en/latest/tutorial/tutorial_01.html

Sergey
14.12.2016
08:14:21
Client id and Client Secret are automatically generated
мне нужно наоборот, добавить клиента с моими данными
нужно https://django-oauth-toolkit.readthedocs.io/en/latest/tutorial/tutorial_03.html, только для сторннего сервиса

Erdni
14.12.2016
10:17:38
тупой вопрос по деплою, чуть оффтоп
на DO как лучше быть с картой оплаты? виртуальную завести какую?

parikLS
14.12.2016
10:22:57
у меня обычная карта + пейпал

Artem
14.12.2016
10:23:43
Бобрень! попробовал тут на медни SQLAlchemy.. да, вот это ОРМка, всем ОРМка!
богатейший функционал

Michael
14.12.2016
10:31:44
чисто интересно

Google

Artem
14.12.2016
10:44:29

Michael
14.12.2016
10:46:37
json-филд это нативный тип для постгрес и поздних версий mysql 5.7.8+ и в джанге есть поддержка этого дела
group_by: https://docs.djangoproject.com/en/1.10/topics/db/aggregation/#interaction-with-default-ordering-or-order-by
ну, алкеми крутая штука, не спорю.

Artem
14.12.2016
10:51:00

Dima
14.12.2016
11:22:31
Вот только в алхимии свои косяки есть.
Например, она не умеет работать с ARRAY[JSON].
Запрос делает с кастом джсона в ::text ):
миграции ещё. вроде есть alembic, но он иногда какую-ту хуйню генерирует, приходится руками править.

Sergey
14.12.2016
12:07:44
Какой есть аналог context_processors для jinja?
или как сделать переменную которая должна быть доступна во всех шаблонах jinja

amureki
14.12.2016
12:34:52

Sergey
14.12.2016
12:57:08

amureki
14.12.2016
12:58:07
ну я за вас погуглил, а дальше вы уж сами с помощью документации, гитхаба и примеров :)

Sergey
14.12.2016
12:58:36
такое я и сам могу нагуглить - пример не рабочий

Michael
14.12.2016
13:37:55
http://stackoverflow.com/questions/30701631/how-to-use-jinja2-as-a-templating-engine-in-django-1-8
?

Sergey
14.12.2016
13:44:57

Roman
14.12.2016
14:10:53
Через хедер тоже не работает, что я делаю не так? Вроде по докам должно работать, но после первой формы возникает ошибка 403
$.ajax({
type: 'POST',
url: this.action,
headers: {
'X-CSRFToken': getCookie('csrftoken')
},
data: {
//csrfmiddlewaretoken: csrf,
username: this.username.value
},
}