您的位置:首页 > 编程语言 > Python开发

Python学习笔记(十一)

2016-05-11 15:36 381 查看
mylab项目实战,结束。。

10、<form action="/addproject" method="post" id="myform" name="myform" enctype="multipart/form-data">
这样写的form中的action,"/"代表的是当前的目录,而/addproject就是可以通过总的urls中的设置进行访问views中的方法。

可以在TEMPLATE中进行DIR的设置,一个列表[listelement01,..,listelement0n]
如果这样写:
form action="addnews.html" method="post" id="myform" name="myform" enctype="multipart/form-data">
访问的是当前static目录下的addnews.html文件,因为已经设置static的路径,只需要在项目的urls文件中设置addnews配套的views即可,
在views中的返回函数写为/addnews.html,即为在当前目录(static对应文件夹下的)的文件(并没有反应!!!!!!!)

----很无奈的发现,我设置的路径,只有在templates中的文件,才能在urls中进行配置,然后调用相应的views函数进行处理,在action'/xx.html'

11、if only when report error:The view mainpage.views.addproject didn't return an HttpResponse object. It returned None instead.

You have an indentation problem. Everything from else onwards should be moved one indentation to the left.

 Otherwise, as the error says, nothing is returned when method is not POST.

 

 

12、Forms中设置的文件名和html中的不一致,会导致错误,在判断xx.is_valid()报错

    render_to_response()中出现mulit..错误,是在传值的时候传重复了render_to_response() got multiple values for keyword argument 'context_instance'

13、href="/mainpage.html?id={{item.id}}"这样可以。呵呵

14、列表中的元素可以是字典,字典可以转成列表,但是只能是关键字或者值

<input type="text" class="text" value="Name" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Name';}">

15、django中文件下载的方法:
-1)直接将文件放在HttpResponse中,这样文件存放在内存中,适合小文件的下载,但如果这个文件非常大,这种方式会占用大量的内存,甚至导致服务器崩溃
def file_download(request):

    # do something...

    with open('file_name.txt') as f:

        c = f.read()

    return HttpResponse(c)
-2)使用StreamingHttpResponse

16、filename = 'enable.rar'

        f = open(filename)

        data = f.read()

        f.close()

实现服务器上文件的下载——————

        response = HttpResponse(data,content_type='application/octet-stream') 

        response['Content-Disposition'] = 'attachment; filename=%s' % filename

        return response

注::E:/Pythonnew/workspace/lab01/mainpage/static/projects/files/upload/Koala.jpg这样才是路径

17、try:

                dt = DownloadTimes.objects.get(title=title)#判断数据库中是否存在某一条记录

                dt.times = dt.times+1

                dt.save()

            except ObjectDoesNotExist:

                dt = DownloadTimes(title=title,times=1)

                dt.save() 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python django