我正在尝试修改django管理界面,但我看不到自定义模板。
在admin.py文件中,我添加了此模型admin
class FTPAdmin(admin.ModelAdmin):
def get_urls(self):
urls = super(FTPAdmin,self).get_urls()
my_urls = patterns('',
(r'^ftp/$',self.admin_site.admin_view(self.FTPView)))
return my_urls + urls
def FTPView(self, request):
form = FTPForm()
if request.method == 'POST':
if form.is_valid():
return HttpResponseRedirect('/admin/')
return render_to_response(request,'ftpform.html',{'form':form})
在我的项目文件夹中,我有一个带有自定义模板的admin子文件夹的模板文件夹 (/DjangoProjects/projectftp/templates/admin/ftp.html)
{% extends "admin/base_site.html" %}
{% block title %}My test upload{% endblock %}
{% block content %}
<form action="" method="post">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Upload" />
</form>
{% endblock %}
在我的settings.py文件中,我更改了模板目录:
TEMPLATE_DIRS = (
BASE_DIR + '/templates/',
)
在我的forms.py中,我创建了一个简单的表单:
class ProcFTPForm(forms.Form):
anio = forms.IntegerField(required=True)
mes = forms.IntegerField(required=True)
def __init__(self, *args, **kwargs):
super(ProcFTPForm, self).__init__(*args, **kwargs)
self.helper = FormHelper()
我尝试在网址中看到模板&#34; ip:port / admin / ftp&#34;或者ip:port / admin / app_name / ftp或者ip:port / ftp。
任何建议
提前致谢
更新
这是我模特的代码:
class Lectura_FTP():
def leer_ftp(self):
cursor = connection.cursor()
sp = cursor.callproc("CARGA_LISTA_ARCHIVOS_PC")
cursor.close()
return sp
答案 0 :(得分:0)
您应该使用render
快捷方式而不是render_to_response
:
return render(request, 'ftpform.html', {'form': form})
或者将render_for_response
来电更改为:
return render_for_responce('ftpform.html', {'form': form},
context_instance=RequestContext(request))
更新:视图的网址为ip:port/admin/app_name/model_name/ftp/