簡體   English   中英

如何創建類似於管理站點的django網頁

[英]how to create django web page similar to admin site

我是django的初學者,我想創建一個新的網頁,我可以對其進行編輯並添加到類似管理站點頁面的數據庫模型中,但這將在網站中以使用戶能夠對其進行控制,並且我可以擴展自己的基礎在其中的.html頁面中,我進行了搜索,但沒有找到像管理基礎站點這樣的簡單解決方案來使我能夠控制模型,我試圖在上下文中發送此模型的所有對象,但無法添加或編輯它在數據庫模型中,我只能查看它。

誰能幫我? 謝謝。

這是此網頁的我的models.py

from django.db import models

class Email(models.Model):
    type = models.CharField(max_length=200, null=True, blank=True)
    subject = models.TextField()
    from_email = models.CharField(max_length=200, null=True, blank=True)
    to_email = models.CharField(max_length=200, null=True, blank=True)
    reply_to_email = models.CharField(max_length=200, null=True, blank=True)
    body_text = models.TextField()
    body_html = models.TextField()
    status= models.CharField(max_length=200, null=True, blank=True,default='waiting')  

    def __unicode__(self):
        return self.to_email

class EmailTemplate(models.Model):
    template_name=models.CharField(max_length=200)
    subject = models.CharField(max_length=200)
    from_email = models.CharField(max_length=200, null=True, blank=True)
    reply_to_email = models.CharField(max_length=200, null=True, blank=True)
    body_text = models.TextField()
    body_html = models.TextField()

    def __unicode__(self):
        return self.template_name

我的views.py

from django.http import HttpResponse
from django.shortcuts import  render_to_response
from django.template import RequestContext
from survey.models import *
from user_management.models import Candidate
from django.contrib.auth.decorators import login_required
from django import forms
import settings

from emailtemplates import models
from email_sender.models import *

from report.pdf import DrawarmPDF,send_pdf_in_email

from decorators import superuser_required



@login_required
@superuser_required()
def home(request):

  query_results = EmailTemplate.objects.all()
  return render_to_response('emailtemplates/emailtemplates.html', 
                              {"query_results":query_results},
                              context_instance=RequestContext(request))

您需要為POST方法添加操作:

def home(request):

    if request.method == 'POST':
    #            ^^^^^^
    #    do save action code

    query_results = EmailTemplate.objects.all()
    return render_to_response('emailtemplates/emailtemplates.html', 
                              {"query_results":query_results},
                              context_instance=RequestContext(request))

您可以使用表單進行保存操作,此處有更多詳細信息: 表單視圖

最好閱讀有關表單類視圖的基於類的視圖

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM