@pydjango
Django

Полезная информация и правила: https://github.com/amureki/django_faq Вакансии и резюме: @django_jobs Пофлудить идём сюда: @django_flood Статистика чата: combot.org/chat/-1001063854692

1741 members

Архив канала @pydjango 12 августа 2016 г.

07:41:51 ДП
User 158455295
Всем привет. Сегодня пришла интересная задачка. Правда не знаю как подойти, поэтому решил посоветоваться. В общем пользователеи сайта должны сами моделировать формы и сохранять их. Т.е. пользователь выбирает что на форме должно быть 2 чекбокса, один текстинпут и один селект. Дефолтные значения такие-то возможные значения такие-то. Не знаю как все это добро хранить в бд. Поискал батарейки и наткнулся на pulpo-forms-django. Из минусов - оно тесно завязано на ангуляр, поэтому мне не подходит
08:17:20 ДП
User 107485588
User 158455295
Всем привет. Сегодня пришла интересная задачка. Правда не знаю как подойти, поэтому решил посоветоваться. В общем пользователеи сайта должны сами моделировать формы и сохранять их. Т.е. пользователь выбирает что на форме должно быть 2 чекбокса, один текстинпут и один селект. Дефолтные значения такие-то возможные значения такие-то. Не знаю как все это добро хранить в бд. Поискал батарейки и наткнулся на pulpo-forms-django. Из минусов - оно тесно завязано на ангуляр, поэтому мне не подходит
я делал похожую задачу
08:18:04 ДП
User 107485588
дойду до компа напишу
08:19:18 ДП
User 158455295
Буду очень благодарен!
08:42:01 ДП
User 107485588
User 158455295
Буду очень благодарен!
вообщем я делал так: есть некая модель UserForm, и с ней по форейн кей связаны модели InputField, DateField и т.д., каждая Field модель представляет собой html input type. модели супер простые, пример : 
class UserForm(models.Model):
    name = models.CharField(max_length=255, unique=True)

    def serialize(self):
        return {
            'id': self.pk,
            'name': self.name,
            'input_fields': [input_field.serialize() for input_field in self.inputfield_set.all()],
            'select_fields': [select_field.serialize() for select_field in self.selectfield_set.all()],
            'date_fields': [date_field.serialize() for date_field in self.datefield_set.all()]
        }

class InputField(models.Model, CommonMethodMixin):
    name = models.CharField(max_length=255)
    verbose_name = models.CharField(max_length=255)
    document = models.ForeignKey(to=UserForm)

    def serialize(self):
        return {
            'name': self.name,
            'verbose_name': self.verbose_name,
        }далее через админку создается форма, к ней крепятся нужные инпуты, во вьюхе на фронт отдается джсон:
class FormView(View):

    def get(self, request):
        response = {
            "forms": [form.serialize() for form in UserForm.objects.all()]
        }

        return HttpResponse(json.dumps(response))а на фронте респонс парсится и из него создается готовая форма
08:43:26 ДП
User 107485588
джс листинг строк 200, сюда кидать не буду, если нужно будет - могу кинуть в личку
08:47:12 ДП
User 107485588
дефолтные значения и возможные значения в  твоем случае так же могут быть отдельными моделями, например ManyToMany к филдам
08:47:37 ДП
User 107485588
ну тут уже нужно смотреть более подробно
08:50:15 ДП
User 158455295
Спасибо! Я представлял себе что-то подобное. Если можно, то джаваскрипт листинг я бы тоже взял
08:50:27 ДП
User 158455295
Покурить так сказать
08:50:41 ДП
User 107485588
щас кину в личку
10:17:17 ДП
User 2895769
User 158455295
Всем привет. Сегодня пришла интересная задачка. Правда не знаю как подойти, поэтому решил посоветоваться. В общем пользователеи сайта должны сами моделировать формы и сохранять их. Т.е. пользователь выбирает что на форме должно быть 2 чекбокса, один текстинпут и один селект. Дефолтные значения такие-то возможные значения такие-то. Не знаю как все это добро хранить в бд. Поискал батарейки и наткнулся на pulpo-forms-django. Из минусов - оно тесно завязано на ангуляр, поэтому мне не подходит
все эти параметры можно хранить в ArrayField + HStoreField
10:18:06 ДП
User 2895769
то есть делаем модельку Формы, там поля имя формы, какие-то ещё поля и вот это поле с параметрами полей
10:55:47 ДП
User 158455295
> @lorddaedra
все эти параметры можно хранить в ArrayField + HStoreField

Ага, спасибо. Почитаю про это
08:59:36 ПП
User 82569033
Гайз, написал такую вьюху 
def addlike(request, article_id):
    try:
        article = Article.objects.get(id=article_id)
        article.article_likes += 1
        article.save()
    except ObjectDoesNotExist:
        raise Http404
    return redirect('/')
Она полностью не робит, ни редирект, ни увеличение лайков.
Вот мой урл 
url(r'^articles/add_like/(?P<article_id>\d+)/$', views.addlike, name='add_like')
Вот так прописываю ссылку в шаблоне
<a href="{% url 'add_like' article.id %}">
09:02:18 ПП
User 1534653
User 82569033
Гайз, написал такую вьюху 
def addlike(request, article_id):
    try:
        article = Article.objects.get(id=article_id)
        article.article_likes += 1
        article.save()
    except ObjectDoesNotExist:
        raise Http404
    return redirect('/')
Она полностью не робит, ни редирект, ни увеличение лайков.
Вот мой урл 
url(r'^articles/add_like/(?P<article_id>\d+)/$', views.addlike, name='add_like')
Вот так прописываю ссылку в шаблоне
<a href="{% url 'add_like' article.id %}">
а говорит что?
09:03:19 ПП
User 82569033
Перебрасывает на articlles/add_like/ и все
09:03:25 ПП
User 82569033
т.е. редиректа нет
09:03:34 ПП
User 82569033
увеличения числа лайков тоже
09:12:23 ПП
User 82569033
Вопрос снимается