Я пытаюсь создать функцию, которая позволяет людям публиковать что-то на соответствующей странице пользователя. Я создал как модель «newpost», так и «newpostform» (ниже). У меня возникла проблема с записью функции просмотра, чтобы посмотреть на текущий URL-адрес страницы, а затем взять этот параметр и автоматически прикрепить его к полю ForeignKey модели newpost. Например, если я нахожусь на URL myapp.com/userpage1, и я нажимаю кнопку «post» на этой странице, я хочу создать объект newpost, который автоматически заполняет поле ForeignKey как «userpage1». В основном, я пытаюсь создать приложение, в котором люди могут легко перемещаться по пользовательским страницам, введя параметр страницы пользователя в URL-адрес и легко делать сообщения на этих страницах быстро и кратко - вроде как работает система subreddit reddit, введя имя субредакта в в строке URL. Спасибо за любую помощь и подсказки.Извлечение атрибута ForeignKey на основе URL-адреса веб-сайта?
модель:
class newpost(models.Model):
newlinktag = models.ForeignKey(‘userpage’) #tags link to which userpage the post belongs to
postcontent = models.CharField(max_length=1024)
postdate = models.DateTimeField(auto_now_add=True) #submission timestamp.
postlikes = models.IntegerField(null=False, default=0)
def __unicode__(self):
return self.postcontent
форма:
class newpostform(forms.ModelForm):
postcontentform = models.CharField(max_length=1024)
class Meta:
model = newpost
У меня возникли проблемы только с частью URL-адреса кода Можете ли вы объяснить, что означает [\ w \ -] +? Как это выглядело: url (r '^ (? P [a-zA-Z0-9 _.-] *)/comment $' –
EazyC
Я думаю, вы хотите использовать + вместо * ... \ w \ - соответствует символам слов и дефисам, что очень похоже на ваше решение. Я не уверен на 100%, почему ваш не работает, но дайте мне попробовать , –