Введенные поля не сохраняются в модель - PullRequest
0 голосов
/ 12 марта 2019

Я пытаюсь создать клон pastebin в Django.Я создал приложение вставки и класс вставки в моем models.py

class Paste(models.Model):
    SYNTAX_CHOICES = {
        (0, "Plain"),
        (1, "Python"),
        (2, "HTML"),
        (3, "SQL"),
        (4, "Javascript"),
        (5, "CSS"),
    }

    content     = models.TextField()
    title       = models.CharField(blank=True, max_length=30)
    syntax      = models.IntegerField(choices=SYNTAX_CHOICES, default=0)
    poster      = models.CharField(blank=True, max_length=30)
    timestamp   = models.DateTimeField(default=datetime.datetime.now, blank=True)

    class Meta:
        ordering = ('-timestamp',)

    def __unicode__(self):
        return "%s (%s)" % (self.title or "#%s" % self.id,
            self.get_syntax_display())
    @permalink
    def get_absolute_url(self):
        return ('django.views.generic.list_detail.object_detail',
            None, {'object_id': self.id})

class PasteAdmin(admin.ModelAdmin):
    list_display = ('__unicode__', 'title', 'poster', 'syntax', 'timestamp')
    list_filter = ('timestamp', 'syntax')

admin.site.register(Paste, PasteAdmin)

. В одном из моих шаблонов у меня есть форма, которая требует от пользователя ввести необходимые данные (имя вставки, синтаксис, вставьте себя).

{% extends "base.html" %}

{% block content %}
<h1>Your user is</h1>
{{ request.user }}
{{ request.user.is.authenticated }}
<form action="" method="POST">
  {% csrf_token %}
  Title:   <textarea rows="1" cols="50" placeholder="Title of paste"></textarea><br>
  Syntax:   <textarea rows="1" cols="50" placeholder="Enter syntax"></textarea><br>
  {{ form.content }}<br>
  <textarea rows="4" cols="50" placeholder="Please enter the text you'd wish to paste..."></textarea>
  <input type="submit" name="submit" value="Paste" id="submit">
{% endblock content %}

Но при вводе информации данные не сохраняются при проверке админа.Чего мне не хватает, чтобы сохранить введенную информацию в этой конкретной модели?

Кроме того, у меня есть форма регистрации, которая создает новых пользователей, а также форма, позволяющая войти / выйти из системы.

pastes/views.py

def signup(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return redirect('/home')
    else:
        form = UserCreationForm()
    return render(request, 'signup.html', {'form': form})

Как мне связать пасту с пользователем?Или, позволяя ему оставаться анонимным?

Извините за все (тупые) вопросы, я совершенно заблудился в этом и занимаюсь Джанго только 24 часа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...