
Вадим
28.05.2017
05:54:25
может есть какой то другой вариант

Rookie
28.05.2017
06:38:52
Это всё на шареде происходит, или это vps | vds ?
За это, вообще, wsgi.py отвечает
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "your_project.settings")
application = get_wsgi_application()

Google

Rookie
28.05.2017
06:42:14
И, я подозреваю, что или изменилось название проекта на сервере, или что то с путями.

Вадим
28.05.2017
06:43:42

Rookie
28.05.2017
06:44:43
Смотреть внимательно пути.

Вадим
28.05.2017
06:45:09

Rookie
28.05.2017
06:47:26
application = get_wsgi_application()

Вадим
28.05.2017
06:48:43

Rookie
28.05.2017
06:49:47
Как называется каталог, где лежит settings?

Вадим
28.05.2017
06:50:57
vaksms

Rookie
28.05.2017
06:51:35
он там же, на одном уровне с wsgi?

Вадим
28.05.2017
06:52:09

Google

Вадим
28.05.2017
06:53:30
надо запускать update_num.py


Alex
28.05.2017
07:10:23
Ребят, подскажите пожалуйста. Как реализовать условие вывода шаблона и урл в зависимости стоит ил сайт на обслуживании или нет. Вот код, что не так? Какой алгоритм лучше? Заранее благодарю!
site_config = SiteConfiguration.objects.all()
if site_config.is_maintance == True:
def landing(request):
form = SubscriberForm(request.POST or None)
if request.method == "POST" and form.is_valid():
obj = form.cleaned_data
obj = form.save(commit=False)
obj.save()
return render(request, 'landing/landing.html', locals())
else:
def home(request):
products_images = ProductImage.objects.filter(is_active=True, is_main=True, product__is_active=True)
products_images_phones = products_images.filter(product__category__id=1)
products_images_laptops = products_images.filter(product__category__id=2)
return render(request, 'landing/home.html', locals())
То есть должно проверятся, стоит ли галочка в настройках сайта. И в зависимости от этого, выводится та или иная вьюха.
Может кто натолкнуть на мысль?)


amureki
28.05.2017
07:47:23
Ты уверен, что хочешь рулить мейнтненсом на стороне джанги? По хорошему это должно рулиться веб сервером, например нджинксом

Alex
28.05.2017
07:57:46
Уверен. Ну логику же можно реализовать как то. Типа вместо этого, показывать страничку "На обслуживании" и т.п.
Эти настройки вывел через django.solo
Впринципе условия отрабатывают. Но не отображается, и возникает ошибка, что Url не видит название функции во вьюхе, из-за такой вложенности

Senpos
28.05.2017
08:11:56
А как насчет проверки этой настройки в urls.py? И если она True, то редиректить на страницу с соотв. сообщением

Alex
28.05.2017
08:17:53
Можно примерное условие реализации редиректа?)
в url
s

Senpos
28.05.2017
08:31:18
site_config = SiteConfiguration.objects.all()
if site_config.is_maintance:
urlpatterns = [
url(r'^', TemplateView.as_view(template_name='maintenance.html'), name='maintenance')
]
Что-то типа такого.
Если только одно приложение на обслуживании - можно сделать для каждого соотв. настройку и делать такой финт в urls.py нужного приложения, а не глобально
Можно как-то убрать этот лишний запрос к department?
department = get_object_or_404(Department, pk=self.kwargs.get('pk'))
teachers = Teacher.objects.filter(department__pk=department.pk)
Что, если я сделаю вот так
teachers = Teacher.objects.filter(department__pk=self.kwargs.get('pk'))
if teachers is not None:
return teachers
else:
return Http404
Или можно как-то по другому?
Вообще, этот один запрос сильно не мешает, скорее для спортивного интереса)

amureki
28.05.2017
09:58:06
Зачем по другому? Нормально вышло
Можно чище сделать в конце: return teachers or Http404

Senpos
28.05.2017
10:14:08
Но вообще, теперь всё работает
if teachers:
return teachers
else:
raise Http404


Eugene
28.05.2017
10:22:10
Скажите пожалуйста как правильнее обрабатывать искючения в пагинации? Исходные данные: страница с набором статей для блога. Не работает выдача для первой страницы с форматом адреса 127.0.0.1. Если же явно передать номер первой страницы при помощи GET - все работает, т.е. 127.0.0.1/?page=1 выдает корректный результат. Во вьюшке на данный момент такой код:
def articles_list(request):
articles = Posts.objects.new()
try:
page_num = request.GET.get('page')
except PageNotAnInteger:
page_num = 1
if not page_num:
page_num = 1
# Provide Paginator with the request object for complete querystring generation
p = Paginator(articles, 10, request=request)
articles = p.page(page_num)
return render_to_response('articles.html', {
'articles': articles,
})
Блок if not page_num: page_num = 1 вынужден был написать чтобы адрес 127.0.0.1 обрабатывался. Но по-моему это голимый костыль. Не подскажете как правильнее сделать?

Google

Eugene
28.05.2017
10:23:09
использую для пагинации батарейку https://pypi.python.org/pypi/django-pure-pagination

Senpos
28.05.2017
10:27:13
Странно. Я, если честно, ничего особо не делал.
Правда, у меня с CBV и их миксин для пагинации.
Пример: https://senpos.herokuapp.com/blog/
Вьюха PostListView: https://github.com/Senpos/senpos_ga/blob/master/src/blog/views.py
Во-вторых, это не эквивалентно записи с получением department вручную.
Ибо ожидаемое поведение - выкидывать 404 если department не существует.
А в этом варианте 404 будет выкидаться даже если он существует, но в нем просто нет преподавателей.

amureki
28.05.2017
10:55:36

Senpos
28.05.2017
10:55:45
=)
Кто пользуется SiteTree?
Я могу в дереве для ListView динамически указать verbose_name модели?
Во вьюхе я писал Modelname._meta.verbose_name, а тут формат как в шаблоне

Hagal
28.05.2017
11:11:02
Помогите решить проблему... с активацией venv/
1. установил virtualenv
2. Перешёл в нужную директорию и при ".\venv\Scripts\activate" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом...
помогите плз

Сергей
28.05.2017
11:12:15
source ...../activate

Hagal
28.05.2017
11:13:58

Сергей
28.05.2017
11:14:12
не, это для убунты.. у винды чёт др

Senpos
28.05.2017
11:16:10

Hagal
28.05.2017
11:16:33

Senpos
28.05.2017
11:18:10

Hagal
28.05.2017
11:20:00

Senpos
28.05.2017
11:20:37
Scripts\activate
Если из этой папки

Hagal
28.05.2017
11:21:47

Google

Senpos
28.05.2017
11:23:10
Это я предлагал уже вводить команду)

Hagal
28.05.2017
11:23:48

Senpos
28.05.2017
11:24:41
Введи сейчас
cd ../..
hagal\Scripts\activate
Это две команды, по очереди

Hagal
28.05.2017
11:26:37

Senpos
28.05.2017
11:27:22
Не за что. Есть еще пакет virtualenvwrapper-win, с ним это немного проще делается.
Помогите с sitetree) Не резолвит, заразa, дальше первой сущности

Admin
ERROR: S client not available

Senpos
28.05.2017
12:10:42
Урлы
url(r'^$', TemplateView.as_view(template_name='journal/index.html'), name='index'),
url(r'^university/$', UniversityListView.as_view(), name='university_list'),
url(r'^university/(?P<pk>\d+)/$', UniversityDetailView.as_view(), name='university_detail'),
url(r'^university/(?P<pk>\d+)/faculties/$', FacultyListView.as_view(), name='faculty_list'), <--- вот этот не резолвится
url(r'^faculty/(?P<pk>\d+)/$', FacultyDetailView.as_view(), name='faculty_detail'),
А вот тут не строит , просто пустоту отдает
http://127.0.0.1:8000/journal/university/1/faculties/

Ivan
28.05.2017
12:37:39
Ребята, привет! Посмотрел cryspy forms — аж скулы сводит? Что еще есть для кастомизации формочек (надо вывести в формате для bootstrap3)?
Тут в истории упоминались floppyforms — вроде получше выглядят, кто-нибудь пробовал их использовать?

Denis
28.05.2017
12:38:45
Прекратите насиловать джангу, для стилизации форм лучше использовать CSS, который был для этого придуман
Уже миллион раз об этом говорили

Andrey
28.05.2017
12:39:47

Rookie
28.05.2017
12:41:11
Да да, что такое кастомизация формочек?

Ivan
28.05.2017
12:46:55
Да да, что такое кастомизация формочек?
например, вот такую html структуру:
<form class="form-horizontal form-bordered" method="post">
<div class="form-group">
<label class="col-md-3 control-label" for="principal_inn">ИНН<span class="required" aria-required="true">*</span></label>
<div class="col-md-6">
<input type="text" class="form-control" id="principal_inn">
</div>
<div class="col-md-3">
<i class="fa fa-check"></i>
</div>
</div>
</form>

Rookie
28.05.2017
12:48:31
Ну и ради бога. attrs при создании поля позволяет передать словарь всего, что угодно душе.
Ну, только в этом случае, наверное, придётся вызывать каждое поле вручную.
{{ form.field }}

Ivan
28.05.2017
12:53:52
если так, то проще в шаблоне все руками написать

Rookie
28.05.2017
12:56:08
Я такое делаю только на вложенных, или инлайн формах, когда мне действительно нужна ооочень кастом разметка.
А крипси, не знаю, мне нравится.

Google

Ivan
28.05.2017
13:05:20
@RookieCrewkie ясно :) наверное, вот так сделаю: https://djangosnippets.org/snippets/10455/

Rookie
28.05.2017
13:12:34
Ну, если все div блоки одинаковые, то можно и так.

Genius
28.05.2017
14:23:08
Всем добрый день. Товарищи, подскажите какой форум лучше всего сейчас прикрутить к сайту? Что посвежее и без особых заморочек?

Denis
28.05.2017
14:24:54
Я как-то спирит прикручивал, хоть и сам минималист, но там вообще рай минимализма :)

Genius
28.05.2017
14:27:40
А вообще геморно это? Ни разу еще не делал форум

Denis
28.05.2017
14:28:08
Так там просто приложение, все уже готово.

Rookie
28.05.2017
14:32:16
Думаю, если ты для себя чётко поймёшь, что такое форум, то окажется, что его можно быстро написать самому.

amureki
28.05.2017
14:47:12
я года три назад выбирал готовые решения, но в итоге написал свой форум, ибо тесно завязан был на сайт, аккаунты и тп
Но спирит неплох был

Alex
28.05.2017
14:50:17
Добрый день, ребят! В чем может быть проблема? Не пойму. '''site_config = SiteConfiguration.objects.get()
print(site_config)
if site_config == 'True':
print(site_config)
print("Сработало!")
urlpatterns = [
url(r'^$', views.landing, name='landing'),
]
else:
print("Не Сработало!")
print(site_config)
urlpatterns = [
url(r'^$', views.home, name='home'),
url(r'^landing/', views.landing, name='landing'),
]'''
Почему то срабатывает только второе условие
site_config возвращает str(True). Поэтому сравниваю со строкой.
КАк диагностировать?

Rookie
28.05.2017
14:51:03
Ну, не скажу "А чо там писать". Можно то навертеть ого го.
Но, суть сводится к тому, что у тебя есть тема форума, к которой приязан тред сообщений, каждое из которых привязано к пользователю. Вокруг этого каркаса лепи что хочешь.

Alex
28.05.2017
14:53:36
Нет, как диагностировать, почему 1 условие не совпадает.
В классе SiteConfiguration через def __str__() выдается str(self.переменная)

Eugene
28.05.2017
14:54:07
'True'?xd