
Marina
30.03.2018
18:20:18

Ahmed
30.03.2018
18:29:00
start-dev.sh
покажи что там?

Marina
30.03.2018
18:29:41

Ahmed
30.03.2018
18:34:40
127.0.0.1:8000 браузер что говорит?

Google

Marina
30.03.2018
18:36:45
ERR_CONNECTION_REFUSED
другие проекты благополучно запускаются если что

amureki
30.03.2018
18:38:23
Можешь кинуть полный трейс?)

Marina
30.03.2018
18:45:16

amureki
30.03.2018
18:46:16
Ну порт может закрыт из докера

Marina
30.03.2018
18:49:37
в интернетах пишут что 0.0.0.0 должен быть по идее publicly viewable

amureki
30.03.2018
18:53:10
https://stackoverflow.com/questions/36813690/connection-refused-on-docker-container

Marina
30.03.2018
22:52:31
к сожалению не помогло, откопала машину с убунту и все запустилось без доп манипуляций.. чудеса
спасибо за помощь

T
31.03.2018
03:20:58
Как кнопку edit_post заставить изменять пост по ID

Dan
31.03.2018
03:24:52
Для изменения объекта через форму, в форму нужно передать instance

T
31.03.2018
03:25:52

Google

T
31.03.2018
03:27:18

Dan
31.03.2018
03:29:38
Оно так и работает, всё что тебе нужно это получить объект из базы по id и передать его в форму как instance тогда форма поймёт что нужно изменить этот обьект

T
31.03.2018
03:31:17
Здесь ответ найду?

Олег
31.03.2018
08:09:07
Здесь ответ найду?
https://docs.djangoproject.com/en/2.0/ref/class-based-views/generic-editing/#django.views.generic.edit.UpdateView

Lazoreth
31.03.2018
08:36:17
Чет приехал на кодфест
Везде джава да пхп
Такое чувство что про питон и джанго энтерпрайз ваще не в курсе

Stepan
31.03.2018
08:37:44
Ребят
Как залить изменения на чужой проект правильней и проще на гите

T
31.03.2018
08:38:28

Rodion
31.03.2018
08:47:05

Олег
31.03.2018
09:02:10
http://g.zeos.in/?q=Как%20залить%20изменения%20на%20чужой%20проект%20правильней%20и%20проще%20на%20гите

Panda
31.03.2018
09:15:47
Привет. Есть такой вопрос. Сейчас смотрю тутор официальный по 2.0. https://docs.djangoproject.com/en/2.0/intro/tutorial03/ - вот тут такой момент есть, что мы в урлах в конце ставим слэш. (# ex: /polls/5/) . Но когда я ввожу без слэша, то идет редирект на слэш. Где указаны эти правила редиректа?

Pavel
31.03.2018
09:17:00

Сфлу
31.03.2018
09:17:00
https://docs.djangoproject.com/en/2.0/ref/settings/#append-slash

Panda
31.03.2018
09:21:51
Зашито где-то в middleware?
Вижу, спасибо

Google

Ahmed
31.03.2018
09:49:58
Хочу фильтровать данные по периоду от и до
today = datetime.now().strftime("%Y-%m-%d")
week_ago = (datetime.now() - timedelta(days=7)).strftime("%Y-%m-%d")
log = Log.objects.filter(created__range=[today, week_ago])
Почему в queryset приходит пустой список?

Вячеслав
31.03.2018
09:51:28
Ребят, всем привет! Не работает функция authenticate из django.contrib.auth. Специально пробую создать нового пользователя с помощью User.objects.create(username='helloworld1', password='123456'). Потом вызываю нашу функию print(authenticate(username='helloworld1', password='123456')). Печатает None. В чем дело?

Михаил
31.03.2018
09:53:39
А юзер-то создался, проверял?

Senpos
31.03.2018
09:54:50

Eugene
31.03.2018
09:55:10

Вячеслав
31.03.2018
09:55:25

Eugene
31.03.2018
09:56:33
set_password
user.set_password('123456')

Ahmed
31.03.2018
10:00:04


Вячеслав
31.03.2018
10:05:39
set_password
Не выходит. Юзер как бы в базе данных, но авторизоваться не может. Возможно, дело в том, что не правильго сохраняю данные из формы регистрации. Посмотрите на этот код view. Что тут не так?
def signup(request):
if request.user.is_authenticated:
pass
# TODO: Redirect to index page
if request.method == 'POST':
form = SignupForm(request.POST)
if form.is_valid():
user = SiteUser.objects.create_user(
first_name=request.POST['first_name'],
username=request.POST['username'],
email=request.POST['email'])
user.set_password(request.POST['password'])
# add = form.save(commit=False)
# add.save()
return redirect('/')
else:
form = SignupForm()
return render(request, 'authentication/signup.html', {'form': form})
Может, есть какие-то полезные статьи\гайды как написать регистрацию и авторизацию пользоватетелей? Дадите ссылки - буду крайне благодарен.

Eugene
31.03.2018
10:06:15

Вячеслав
31.03.2018
10:06:33

Eugene
31.03.2018
10:06:46

Вячеслав
31.03.2018
10:06:49
Написал модель, которую можно будет расширять на будущее

Eugene
31.03.2018
10:06:54
и он не работает.
сейчас

Вячеслав
31.03.2018
10:06:57

Senpos
31.03.2018
10:07:14
https://simpleisbetterthancomplex.com/tutorial/2016/07/22/how-to-extend-django-user-model.html

Eugene
31.03.2018
10:07:21
https://docs.djangoproject.com/en/2.0/topics/auth/customizing/#a-full-example

Google

Eugene
31.03.2018
10:07:52
а, не дочитал)
сорян

Вячеслав
31.03.2018
10:09:34

Дмитрий
31.03.2018
10:14:12


Олег
31.03.2018
10:15:32
def post(self,request,*args,**kwargs):
self.form =UserCreationForm(request.POST)
if self.form.is_valid():
self.form.save()
user = authenticate(username=self.form.cleaned_data['username'],
password=self.form.cleaned_data['password1'])
if user is not None:
if user.is_active:
login(request, user)
return redirect('register_step2')
return redirect('login')
else:
return super(RegisterView, self).get(request, *args, **kwargs)
Но это в классе templateview
class RegisterView(TemplateView,category_list,UserCreationForm):
form = None
template_name = 'registration/register.html'
def get(self,request,*args,**kwargs):
self.form = UserCreationForm
return super(RegisterView,self).get(request,*args,**kwargs)
def get_context_data(self, kwargs):
context = super(RegisterView,self).get_context_data(kwargs)
context['form'] = self.form
return context
def post(self,request,*args,**kwargs):
self.form =UserCreationForm(request.POST)
if self.form.is_valid():
self.form.save()
user = authenticate(username=self.form.cleaned_data['username'],
password=self.form.cleaned_data['password1'])
if user is not None:
if user.is_active:
login(request, user)
return redirect('register_step2')
return redirect('login')
else:
return super(RegisterView, self).get(request, *args, **kwargs)


Вячеслав
31.03.2018
10:18:40
а signin как делаешь?
def login(request):
if request.user.is_authenticated:
pass
# TODO: Redirect to index page
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
print(username, password)
user = authenticate(request, username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
print('User is valid, active and authenticated')
else:
print('The password is valid, but the account has been disabled!')
else:
print('The username and password were incorrect.')
else:
form = LoginForm()
return render(request, 'authentication/login.html', {'form': form})

Eugene
31.03.2018
10:23:37
ну хватит кидать сюда код, gist или dpaste.de

Panda
31.03.2018
10:45:45
Помогите разобраться плз. Изначально вьюха выглядела вот так. https://dpaste.de/npEB . По итогу решаем, что лоадер нам уже не нужен и HttpResponse тоже. Получается вот такой код - https://dpaste.de/43Dv . Он работает=) Но я когда правил первую ссылку на return просто удалил ненужное и вставил между аргументами адрес. По первой ссылке первым возвращаем context , во второй ссылке первым context не сработал. Надо было менять местами. Не понял почему...


Eugene
31.03.2018
11:47:45
Ребят, привет.
Как правильно хранить массив в бд? Не нашел подходящий тип поля в моделях (ORM). В гугле встречал варианты: вынос массива в отдельную таблицу, использование JSON с доп.либой.

Dude
31.03.2018
11:49:07
Ебани его в байтовую строку )
и сохраняй

Eugene
31.03.2018
11:50:00
ок, щас покурю эту тему. это самый лёгкий путь?

Dude
31.03.2018
11:50:37
это я так, навскидку. Сам не знаю бестпрактис
Pickle

Senpos
31.03.2018
11:55:00
@HellPirate
Сори, другой Евгений, ошибся ником :)

Eugene
31.03.2018
11:55:16
)

Google

Dude
31.03.2018
11:55:57
Кстати, как лучше делать? Валидацию формы на фронте с помощью js и потом кидать json на сервер и уже отправлять данные или все на серваке?

Dave
31.03.2018
11:58:49
если у тебя нет всяких реактов и вю, я бы на сервере делал

Alex
31.03.2018
11:58:54

Dave
31.03.2018
11:59:09
то есть, если не REST бекенд, то я бы не парился

Dude
31.03.2018
12:00:09
Тогда другой вопрос, у меня кнопки сабмит не работает, если я js не отключу
хотя валидацию я закомментировал в js

Dave
31.03.2018
12:00:33
смотри, у тебя где-то вешается на нее onsubmit. найди его

Dude
31.03.2018
12:00:57
окей, пошел искать

Dave
31.03.2018
12:01:53
если у тебя jquery, то скорее всего myForm.submit(function(){})

Дмитрий
31.03.2018
12:02:39


Евгений
31.03.2018
12:02:52
пытаюсь записать картинку по урлу в ImageField через метод, который отлично работает для новых записей:
def download_image_from_url(self, url, name):
# Stream the image from the url
try:
request = requests.get(url, stream=True)
except requests.exceptions.RequestException as e:
self.stderr.write(self.style.ERROR('Image request error: ' + str(e)))
return None
if request.status_code != requests.codes.ok:
self.stderr.write(self.style.ERROR('Error. Image request status code: ' + str(request.status_code)))
return None
# Create a temporary file
lf = tempfile.NamedTemporaryFile()
# Read the streamed image in sections
for block in request.iter_content(1024 * 8):
# If no more file then stop
if not block:
break
# Write image block to temporary file
lf.write(block)
return files.File(name=name + '.' + request.headers.get('content-type')[-3:], file=lf)
но при попытке сохранения (после удачного нового присваивания уже существующего поля картинки) - он падает с вот такой непонятной ошибкой:
Traceback (most recent call last):
File "D:/Projects/digrate.loc/manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
utility.execute()
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\__init__.py", line 356, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\base.py", line 330, in execute
output = self.handle(*args, **options)
File "D:\Projects\digrate.loc\ico\management\commands\coingecko.py", line 222, in handle
ico.save()
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 808, in save
force_update=force_update, update_fields=update_fields)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 838, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 902, in _save_table
for f in non_pks]
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 902, in <listcomp>
for f in non_pks]
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\fields\files.py", line 294, in pre_save
if file and not file._committed:
AttributeError: 'tuple' object has no attribute '_committed'
ЧЯДНТ?


Eugene
31.03.2018
12:03:57


Dave
31.03.2018
12:04:38
пытаюсь записать картинку по урлу в ImageField через метод, который отлично работает для новых записей:
def download_image_from_url(self, url, name):
# Stream the image from the url
try:
request = requests.get(url, stream=True)
except requests.exceptions.RequestException as e:
self.stderr.write(self.style.ERROR('Image request error: ' + str(e)))
return None
if request.status_code != requests.codes.ok:
self.stderr.write(self.style.ERROR('Error. Image request status code: ' + str(request.status_code)))
return None
# Create a temporary file
lf = tempfile.NamedTemporaryFile()
# Read the streamed image in sections
for block in request.iter_content(1024 * 8):
# If no more file then stop
if not block:
break
# Write image block to temporary file
lf.write(block)
return files.File(name=name + '.' + request.headers.get('content-type')[-3:], file=lf)
но при попытке сохранения (после удачного нового присваивания уже существующего поля картинки) - он падает с вот такой непонятной ошибкой:
Traceback (most recent call last):
File "D:/Projects/digrate.loc/manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
utility.execute()
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\__init__.py", line 356, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\core\management\base.py", line 330, in execute
output = self.handle(*args, **options)
File "D:\Projects\digrate.loc\ico\management\commands\coingecko.py", line 222, in handle
ico.save()
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 808, in save
force_update=force_update, update_fields=update_fields)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 838, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 902, in _save_table
for f in non_pks]
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\base.py", line 902, in <listcomp>
for f in non_pks]
File "C:\Users\Eugene\Envs\venv\lib\site-packages\django\db\models\fields\files.py", line 294, in pre_save
if file and not file._committed:
AttributeError: 'tuple' object has no attribute '_committed'
ЧЯДНТ?
используй django.core.files.File


Дмитрий
31.03.2018
12:04:46

Eugene
31.03.2018
12:04:59
спасибо