相关疑难解决方法(0)

Django:你如何提供媒体/样式表并在模板中链接到它们

已经询问了这个问题的变化,但是当我的模板被渲染时,我仍然无法正确加载我的样式表.

我正在尝试在开发过程中从Django进程中提供静态媒体 - 这在生产中是非常不鼓励的,我知道.我会发布我的配置和模板,希望有人可以帮我理解我哪里出错了.

请注意,我确实尝试按照Django项目网站上的示例进行操作,但是没有提到如何从模板中引用样式表.我也尝试过同一件事的许多不同变体,所以我的代码/设置可能与描述的有些不同.

settings.py

MEDIA_ROOT = 'D:/Dev Tools/django_projects/dso/media'
MEDIA_URL = '/media/'
ADMIN_MEDIA_PREFIX = '/media/'
Run Code Online (Sandbox Code Playgroud)

urls.py

from django.conf.urls.defaults import *
from django.conf import settings
from django.contrib import admin

admin.autodiscover()

urlpatterns = patterns('',
    (r'^admin/(.*)', admin.site.root),
    (r'^ovramt/$', 'dso.ovramt.views.index'),
)

if settings.DEBUG:
    urlpatterns += patterns('',
        (r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
    )
Run Code Online (Sandbox Code Playgroud)

在我的模板中:

<head> 
<title> {% block title %} DSO Template {% endblock %} </title> 
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
<link rel="stylesheet" type="text/css" href="../media/styles.css">
</head>
Run Code Online (Sandbox Code Playgroud)

我向你保证,文件(模板/媒体)位于我文件系统的正确目录中.如果我需要提供任何额外信息,请发表评论.


编辑:

我遇到的一个问题是使用'/'前置我的链接.如果前缀为正斜杠,则从站点的根目录打开链接.如果没有正斜杠,则链接在当前级别打开.一个例子:

www.example.com/application/有一个链接"/ app2 /和一个链接"app3
/".app2将在www.example.com/app2/上打开,app3将在www.example.com/application/app3/上打开我觉得这让我感到困惑.

css python media django django-templates

44
推荐指数
3
解决办法
4万
查看次数

如何在Django中手动分配imagefield

我有一个具有ImageField的模型.如何手动为其分配图像文件?我希望它像任何其他上传文件一样对待它...

python django django-models

15
推荐指数
1
解决办法
4523
查看次数

Admin FileField当前url不正确

在Django管理员中,无论我有FileField,编辑页面上都有一个"当前"框,其中包含指向当前文件的超链接.但是,此链接会附加到当前页面URL,因此会生成404,因为没有这样的页面,例如: http://127.0.0.1:8000/admin/Tank/asset/17/media/datasheet/13/09/05/copyright.html/
作为参考,文件的正确URL是: http://127.0.0.1:8000/media/datasheet/13/09/05/copyright.html

有没有办法在默认的管理布局中解决这个问题?它会影响我数据库中的每个FileField,在我看来就像一个bug.我只是错了吗?

python django django-admin filefield

7
推荐指数
2
解决办法
3823
查看次数

使用 FTP 后端上传 Django 文件

我想根据示例上传我的文件需要一个最小的 Django 文件上传示例,但是我想不将文件存储在本地,而是使用 FTP 存储在另一台服务器上。

我一直在尝试让这段代码工作,这看起来很简单,但是 ImportError: No module named FTPStorage当我运行时我一直在 python manage.py runserver

我查看了多个存储库并搜索了该站点,但无济于事。我想这是一个相当简单的任务,但我似乎无法让它工作。

谢谢。

文件夹结构

文件夹结构

设置.py

"""

Django settings for myproject project.

Generated by 'django-admin startproject' using Django 1.8.

For more information on this file, see
https://docs.djangoproject.com/en/1.8/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.8/ref/settings/
"""

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
import os

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = …
Run Code Online (Sandbox Code Playgroud)

python django ftp file-upload remote-server

7
推荐指数
1
解决办法
1万
查看次数

在Django网站中嵌入散景图会导致空白页,没有错误消息

我正在尝试将Bokeh图嵌入到具有上传按钮的Django网站中。我以此处给出的示例为起点,然后添加了有关从此处进行嵌入的说明。这是我在这里提出的问题的后续措施,因为我现在有一个新问题。当我转到与之关联的URL时,该图不会显示,但是没有错误消息并且页面已加载。

我使用了need-a-minimal-django-file-upload-example/for_django_1.8它,并且在导航到URL时可以按预期工作http://<port>/myapp/list/

在此处输入图片说明

myapp/url.py 看起来像这样

# -*- coding: utf-8 -*-
from django.conf.urls import patterns, url
from . import views

urlpatterns = patterns('myproject.myapp.views',
    url(r'^list/$', 'list', name='list'),
    url(r'^simple_chart/$', views.simple_chart, name="simple_chart"),
)
Run Code Online (Sandbox Code Playgroud)

这是views.pysimple_chart.html。当我导航到http://<port>/myapp/simple_chart/simple_chart函数时,应生成一个图。

views.py

import pdb
# -*- coding: utf-8 -*-
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.http import HttpResponseRedirect
from django.core.urlresolvers import reverse

from myproject.myapp.models import Document
from myproject.myapp.forms import DocumentForm

from django.shortcuts …
Run Code Online (Sandbox Code Playgroud)

python django pycharm bokeh

6
推荐指数
1
解决办法
2883
查看次数

如何在django Web应用程序中上传图像?

我需要让用户在django网络应用上上传图像,但我不知道如何开始以及在views.py或models.py或settings.py中写什么我搜索了答案但没有得到满或逐步回答这个问题(我是django的新手)我在settings.py中提供了MEDIA_ROOT和MEDIA_URL,但在进一步实施时需要帮助

html python django image-upload

5
推荐指数
1
解决办法
8856
查看次数

form.is_valid()返回false(django)

我对django有点新鲜.我试图在上传时选择将文件发送到另一台服务器,但form.is_valid()总是返回false会让我输入if

views.py-

def sent(request):
    if request.method == 'POST':
        form = SendFileForm(request.POST, request.FILES)
        print "form is made"
        print form.errors
        if form.is_valid():
            print "form is valid"
            new_song = Song(songfile= request.FILES['songfile'])
            new_song.save()
            print "new song is made and saved"
            l = List()
            #cd = form.cleaned_data                                                                                                                   
            #SENDS THE FILE TO SERVER GIVEN PATH
            l.all_files(new_song.songfile.path)
            return HttpResponseRedirect(reverse('get_files.views.sent'))
        else:
            print "form is not valid"
    else:
        form = SendFileForm()

    songs = Song.objects.all()
    return render_to_response('sent.html', {'songs': songs,'form': form}, context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

sent.html 模板-

{% if form.errors …
Run Code Online (Sandbox Code Playgroud)

html django django-templates django-forms django-views

5
推荐指数
2
解决办法
1万
查看次数

处理上传图片django admin python

我在Windows上用Python Django开发一个应用程序我试图在我的一个类中添加一个图像上传字段,但是我得到错误,我必须提到我需要给一个相对路径到settings.py所以我可以轻松将我的代码迁移到另一个平台

我应该如何填写settings.py中的以下变量以使它们工作

MEDIA_ROOT = #root to my project

MEDIA_URL = #url 
Run Code Online (Sandbox Code Playgroud)

而在models.py我有

class ProdcutImage(models.Model):
    product = models.ForeignKey(Product)
   image = models.ImageField(upload_to = "/products" )
Run Code Online (Sandbox Code Playgroud)

我需要将图像上传到此文件夹中:

"MY_PROJECT_ADDRESS/static/images/products"
Run Code Online (Sandbox Code Playgroud)

您的帮助将不胜感激

python django image-uploading django-admin

2
推荐指数
1
解决办法
6264
查看次数

在Django上传后如何访问文件?

我在网络上工作。User可以上传文件。这个文件是docx格式的。在他上传文件并选择要将文件翻译成哪种语言后,我想将他重定向到另一个页面,在那里他可以看到翻译价格。价格取决于特定语言和docx文件中的字符数。

我不知道如何处理上传的文件。我有一个获取文件路径并返回多个字符的函数。上传文件并点击提交后,我想调用这个函数,这样我就可以用估计的价格呈现新页面。

我读到我可以跟注temporary_file_pathrequest.FILES['file']但它提高了

'InMemoryUploadedFile' 对象没有属性 'temporary_file_path'

我想找出上传的文件包含多少个字符并将其发送到另一个视图的请求中 - /order-estimation.

看法:

def create_order(request):
    LanguageLevelFormSet = formset_factory(LanguageLevelForm, extra=5, max_num=5)
    language_level_formset = LanguageLevelFormSet(request.POST or None)
    job_creation_form = JobCreationForm(request.POST or None, request.FILES or None)

    context = {'job_creation_form': job_creation_form,
               'formset': language_level_formset}

    if request.method == 'POST':
        if job_creation_form.is_valid() and language_level_formset.is_valid():
            cleaned_data_job_creation_form = job_creation_form.cleaned_data
            cleaned_data_language_level_formset = language_level_formset.cleaned_data
            for language_level_form in [d for d in cleaned_data_language_level_formset if d]:
                language = language_level_form['language']
                level = language_level_form['level']

                Job.objects.create(
                        customer=request.user,
                        text_to_translate=cleaned_data_job_creation_form['text_to_translate'], …
Run Code Online (Sandbox Code Playgroud)

django django-views django-file-upload

2
推荐指数
1
解决办法
1894
查看次数