小编Ish*_*han的帖子

Django:如何使用其他应用程序中的模型

我有两个应用程序:homepageblog.我Post在应用程序中有一个模型blog.我可以将此模型用于应用程序,blog但不能用于应用程序homepage.

我如何在应用程序中使用此模型homepage:我想在我的主页中显示我最近的一些博客帖子作为链接.

博客/ models.py

from django.db import models
from django.db.models import permalink

class Post(models.Model):
    title=models.CharField(max_length=140)
    body=models.TextField()
    date=models.DateTimeField()

    def __str__(self):
        return self.title
Run Code Online (Sandbox Code Playgroud)

博客/ urls.py

from django.conf.urls import url, include
from django.views.generic import ListView, DetailView
from blog.models import Post     
from . import views
urlpatterns = [ 
    url(r'^$', ListView.as_view(
        queryset=Post.objects.all().order_by("-date")[:25],
        template_name="blog/blog.php")),
]
Run Code Online (Sandbox Code Playgroud)

这就是我在app blogTemplate中显示我最近的博客文章的方式

{% for post in object_list %}
     <div id="post_list">
     <h2 class="header1"><a href="/blog/{{post.id}}">  {{ post.title }}</a></h2> …
Run Code Online (Sandbox Code Playgroud)

django

4
推荐指数
1
解决办法
6054
查看次数

Django - 使用基于类的视图发送电子邮件

我一直在制作一个包含列表视图和表单视图的网站。我有一个 form.py ,如下所示:

from django import forms

class ContactForm(forms.Form):
    name = forms.CharField(required=True)                   
    email = forms.EmailField(required=True)
    message = forms.CharField(required=True)
Run Code Online (Sandbox Code Playgroud)

和views.py:

from django.shortcuts import render
from .forms import ContactForm
from django.views.generic import ListView
from django.views.generic.edit import FormMixin
from blog.models import Post
from django.core.mail import EmailMessage

class PostListAndFormView(FormMixin,ListView):
    queryset = Post.objects.all().order_by("-date")[:2]
    template_name = 'personal/index.html'
    form_class = ContactForm
    success_url = 'personal/index.html'
Run Code Online (Sandbox Code Playgroud)

此视图还处理您可以忽略的列表视图功能。

我的 HTML 模板是:

<form action="/" method="post">
{% csrf_token %}
{{ form }}
<input type="submit" value="SEND MESSAGE" />   
</form>
Run Code Online (Sandbox Code Playgroud)

最后是 urls.py :

from …
Run Code Online (Sandbox Code Playgroud)

django

3
推荐指数
1
解决办法
4786
查看次数

标签 统计

django ×2