
OlegBrony
18.02.2018
13:07:52
а как сделать, чтоб возвращал список?
то есть, несколько постов? не один?

Dude
18.02.2018
13:08:43
Что ты хочешь получить? Отфильтрованные по какому-то определенному критерию объекты ?
Тебе нужно вывести список всех отфильтрованных ?

Google

OlegBrony
18.02.2018
13:09:21
да. посты. отфильтрованные по категории
без get_object_or_404 всё работает нормально. я добавил его, чтобы вводя в адресной строке не http://127.0.0.1:8000/music/, a http://127.0.0.1:8000/qwrqadsfs/ выводилась ошибка а не пустая страница с шаблоном

Dude
18.02.2018
13:10:26
и почему ты переопределяешь переменную posts во второй строчке?

OlegBrony
18.02.2018
13:10:55
не переопределяю, а добавляю ещё фильтр. можно через 1 строку, просто она длинная получается

Dude
18.02.2018
13:11:00
у тебя в 1 строке один query_set, а потом ты его с этим же именем переопределил
def detail(request, slug):
html = 'post_detail.html'
categories = Category.objects.all()
query_set = get_object_or_404(Post, slug=slug)

OlegBrony
18.02.2018
13:11:38
то есть... что такое query_set?

Dude
18.02.2018
13:12:02
def list_by_category(request, category_slug):
template = 'category.html'
categories = Category.objects.all()
post = Post.objects.all()
if category_slug:
category = get_object_or_404(Category, slug=category_slug)
post = post.filter(category=category) вот так у меня работает
Доку читал?)
https://djbook.ru/rel1.9/topics/db/queries.html

OlegBrony
18.02.2018
13:13:29
ну да, открыта. но она такая большая

Zhasulan
18.02.2018
13:17:10

Google

Dude
18.02.2018
13:17:16
Ну вот читай тот топик конкретно, все поймешь. А в моем коде я вывожу на страницу category.html отфильтрованные посты по n-ой категории. Я сначала вызвал все объекты, потом задал условие на существование в запросе аргумента url. Далее создал переменную category и получил 1 объект slug которого был передан в url. Это тебе по идее и нужно, далее твой пост будет отфильтрован по категории, которая была вызвана в твоем url, которую ты передал в аргумент предидущего queryset


A'zam
18.02.2018
13:17:39
integratsiya s websaytom, naprimer zakaz yest, klient doljen oplatatiz cherez Payeezy
obichno
u drugie platyojnie sistemi, ya otpravlyayu merchant_id, amount, order_id, callback_url
if transaction == succesfull:
order_status = paid
else:
order_status = canceled_or_something
kak mojno realizovat eto, ya ne kak ne nashol
yest dokumentatsiya, no tam mnogo
i tam skazono, chto forma mojno sozdat i cherez Iframe postavit na sayt
i yest drugie sposobi, kak etot, PayeezyJs, DirectAPi i drugie
ya zaputilsa vsyo eto informatsie
kakoy iz etox mne podoydyot, s chego nado nachat

Dude
18.02.2018
13:21:10
Вкратце тебе нужно получить 1 объект с определенным slug , у меня это категория, а потом все посты фильтровать по ней

OlegBrony
18.02.2018
13:22:26
Ну вот читай тот топик конкретно, все поймешь. А в моем коде я вывожу на страницу category.html отфильтрованные посты по n-ой категории. Я сначала вызвал все объекты, потом задал условие на существование в запросе аргумента url. Далее создал переменную category и получил 1 объект slug которого был передан в url. Это тебе по идее и нужно, далее твой пост будет отфильтрован по категории, которая была вызвана в твоем url, которую ты передал в аргумент предидущего queryset
def category(request, category_slug):
categories = Category.objects.all()
posts = Post.objects.all()
if category_slug:
category = get_object_or_404(Category, slug=category_slug)
post = posts.filter(category=category)
return render(
request,
'blog/category.html',
{
'posts':posts,
'categories': categories,
}
)
я что-то упустил? даже скопировал.

Dude
18.02.2018
13:24:37
Ты не выводишь отсортированную по slug вьюху в контекст
объект точнее


Izy
18.02.2018
16:07:15
ребят привте)) изучаю джангу, делаю блог и прикрутил я теги django-teggit .
И есть у меня такой вопрос))
есть такой запрос во вьюшке:
tag=тут массив тегов который я получил через url по которым идет сортировка
Post.objects.filter(
post_date__lte=timezone.now(),tags__name__in=tag)
.distinct()
.annotate(same_tags=Count('tags'))
.order_by('-same_tags','-post_date')[0:5]
и как я понимаю тут происходит
1) выборка постов по времени(тоесть что бы не брал посты которые запланированны на будующем)
2) потом выборка тех постов которые содердат теги массив tag
3) с помощью distinct мы убираем повторения тоесть уникальнык
4)и вот тут я не понимаю , я честно читал докуметацию по джанге но я его вобще не могу переварить толком,
тоесть по иотогу по оконцовке я тут сортирую так чтобы сначала шли посты где есть больше ввсего с массивом teg и потом все меньше и меньше количества совпадений, ну и потом каждй из пунктов сортируется по времени публикации , но я блять вобще не понимаю как расшифровывывается вот эта часть
.annotate(same_tags=Count('tags'))
.order_by('-same_tags'
обьясните пожалуйста, я пока понимаю это так: сначало считается количество тегов в каждом посте, а потом как то через вот эту штку -same_tags как то все это сортируется...


vadim
18.02.2018
16:26:20
это запросы самостоятельно придуманы или выдрано откуда-то?

OlegBrony
18.02.2018
16:44:49
проблема с отображением страницы с постом. url - path('<int:pk>/', views.detail, name='detail'),
view -
def detail(request, pk):
post = get_object_or_404(Post, pk=pk)
return render(request, 'blog/detail.html', {'post':post})
в шаблоне вижу нормальную страницу, но без поста. попытка отобразить его с помощью {{post}} ни к чему не приводит. что делаю не так?

Bulatbulat48
18.02.2018
16:56:08
OlegBrony шаблон покажи

OlegBrony
18.02.2018
16:56:40
{% extends 'blog/base.html' %}
{% block content %}
</head>
<body>
<div id="header">
<h1><a href="/">OlegBrony</a>'s first blog</h1>
</div>
<div id="page">
<div id="content">
<div class="post">
<!-- <h1 class="title">{{post.title}}</h1>
<p class="byline"><small>Posted on {{post.published_date}} by <a href="#">{{post.author}}</a> | <a href="#">Edit</a></small></p>
<div class="entry">
<p>{{post.text}}</p>
</div> -->
{{post}}
</div>
</div>
<div id="sidebar">
<ul>
<li>
<h2>Categories</h2>
<ul>
{% for category in categories %}
<li><a href="../{{category.url_name}}">{{category.title}}</a></li>
{% endfor %}
</ul>
</li>
<li>
<h2>Archives</h2>
<ul>
<ul>
<li><a href="/last_day">Last day</a></li>
<li><a href="/last_week">Last week</a></li>
<li><a href="/last_month">Last month</a></li>
<li><a href="/last_year">Last year</a></li>
</ul>
</li>
</ul>
</div>
</div>
{% endblock %}

Google

Dude
18.02.2018
17:03:00
Коллеги, как добавить полю в ModelForm такие аттрибуты
<input name="url" value="{{request.get_full_path}}">
Сама форма
class PostForm(ModelForm):
class Meta:
model = User_information
fields = ['name', 'second_name', 'phone', 'email', 'url']

Tim
18.02.2018
18:08:08
а кто подскажет
class Post(models.Model):
author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
что делает models.CASCADE, при удалении автора удалятся посты?

Emil
18.02.2018
18:26:36
https://docs.djangoproject.com/en/2.0/ref/models/fields/#django.db.models.CASCADE

Michael
18.02.2018
18:58:31

Fred
18.02.2018
19:30:03
ребят подскажите как ссылку на категорию сделать во вюхе, категория подтягивается в моделе с помощью ForeignKey

Dude
18.02.2018
19:40:57
def get_absolute_url(self):
return reverse('posts:list_by_category',
args=[str(self.slug)]
)
в модели

OlegBrony
19.02.2018
04:38:53
Я правильно понимаю - модель - это таблица БД в представлениях?

Dan
19.02.2018
04:39:11
да

OlegBrony
19.02.2018
04:39:34
Быстрый ответ в полседьмого. Спасибо

Dan
19.02.2018
04:44:59
это у тебя полседьмого
у меня без 10:45

Stepan
19.02.2018
05:10:07
Хм кто же ето...

rq
19.02.2018
05:42:35
Привет всем, никто не знает, почему когда аяксом отправляешь, название переменной изменяется, строчка в аяксе data: { id_list : list, state: state}, а выхлоп в джанге - <QueryDict: {'id_list[]': ['18', '1', '2'], 'state': ['Создан']}>? Переменная list - js array.

Dan
19.02.2018
05:44:13
что не так то ?
id_list[]?

rq
19.02.2018
05:45:46
Да
Почему он бпэкеты добавляет
Всё, нашёл, https://stackoverflow.com/questions/3266528/how-do-i-remove-the-square-brackets-at-the-end-of-a-js-variable-name-during-ajax

Stepan
19.02.2018
06:24:21
@dantyan Ти знаешь кто я такой?

Google

Dan
19.02.2018
06:24:51
нет
должен ?
как то страшно даже стало...

Alexandr
19.02.2018
06:26:17
стыдно не знать)

Admin
ERROR: S client not available

Dan
19.02.2018
06:27:20
исправлюсь честно честно

Stepan
19.02.2018
06:27:54
@dantyan Ты меня шо не узнал
Ето я Стёпа Неретин
Который
глупые вопросы
задавал
?

Dan
19.02.2018
06:30:10
даже не знаю что сказать
богатым будешь

Farrukh
19.02.2018
06:34:01
https://rutracker.org/forum/viewtopic.php?t=5471022

Ilgiz
19.02.2018
06:35:35
GitHub - dmytrostriletskyi/django-telegram-login: The reusable Django application for Telegram authorization (also known as Telegram login).
https://github.com/dmytrostriletskyi/django-telegram-login

Eugene
19.02.2018
06:39:12

Stepan
19.02.2018
06:39:35
Рил?Я номер поменял? Ах да юзернейм
фак

Google

Stepan
19.02.2018
06:39:51
Я себе ноутбук купил
и возникает вопрос
Тут стоит виндов 10,если я накачу линукс? Гарантия того?Ил нет?

Dan
19.02.2018
06:41:12
гарантия скорее всего нет
надо было сразу брать без ОС сыкономил бы баксов 50

Artem
19.02.2018
06:47:13
Да там пох... Не влияет
Лишь только если не грохнешь загрузочный раздел
Через год и не вспомнишь про него

Dan
19.02.2018
06:49:05
да там главное номер лицензии

Stepan
19.02.2018
06:49:23
Так что стоит рисковать?

Dan
19.02.2018
06:49:47
а ты рисковый парень !!!

Eugene
19.02.2018
06:49:57

Dan
19.02.2018
06:49:59
решил сам ставить линукс ;)

Artem
19.02.2018
06:50:00

Eugene
19.02.2018
06:50:11
?да изи же

Artem
19.02.2018
06:50:11
Ты обречён