小编Chr*_*Yin的帖子

从Django UserCreateForm中删除help_text

可能是一个糟糕的问题,但我正在使用Django的UserCreationForm(略微修改为包含电子邮件),我想删除Django自动在HTML页面上显示的help_text.

在我的HTML页面的注册部分,它有用户名,电子邮件,密码1和密码2字段.但是在用户名下面是"必需的.不超过30个字符.字母,数字和@ ...".在密码确认(密码2)下,它显示"输入与上面相同的密码进行验证".

我该如何删除这些?

#models.py
class UserCreateForm(UserCreationForm):
    email = forms.EmailField(required=True)

    def save(self, commit=True):
        user = super(UserCreateForm, self).save(commit=False)
        user.email = self.cleaned_data['email']
        if commit:
            user.save()
        return user

    class Meta:
        model = User
        fields = ("username", "email", "password1", "password2")
        exclude = ('username.help_text')

#views.py
def index(request):
    r = Movie.objects.all().order_by('-pub_date')
    form = UserCreateForm()
    return render_to_response('qanda/index.html', {'latest_movie_list': r, 'form':form},     context_instance = RequestContext(request))

#index.html
<form action = "/home/register/" method = "post" id = "register">{% csrf_token %}
    <h6> Create an account </h6>
    {{ form.as_p }}
    <input type = …
Run Code Online (Sandbox Code Playgroud)

python django django-models django-registration

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

Virtualenv中的PIP/easy_install PIL vcvarsall.bat错误Windows 7

所以我知道已经有相当多的文档,但我似乎无法让它工作.我正在向Heroku部署一个Django应用程序,并且我正在尝试将PIL安装到我的virtualenv中(应用程序的主要部分需要用户上传的图像).

我试过了两个

easy_install PIL
Run Code Online (Sandbox Code Playgroud)

pip安装PIL

每个人安装结束

error: Unable to find vcvarsall.bat.
Run Code Online (Sandbox Code Playgroud)

如何让PIL进入我的virtualenv?任何人都可以带我走过吗?

谢谢!

python windows django virtualenv python-imaging-library

9
推荐指数
1
解决办法
5995
查看次数

Heroku - 添加了SSH公钥,但仍然收到Permission denied(publickey)错误

之前多次上传到Heroku,这次不知道什么是错的 - 也许是因为我正在使用公共互联网?

无论如何,所以我添加了一个新的公钥

>heroku keys:add
Found existing public key: C:/Users/Chris/.ssh/id_rsa.pub
Uploading SSH public key C:/Users/Chris/.ssh/id_rsa.pub...done

>git push heroku master
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

为什么我不能推送到heroku?

我检查了我的钥匙

heroku键

我的终端正确,所以它应该工作.有人解散了吗?

git heroku

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

Foreman开始找不到Procfile,将Django应用程序部署到Heroku

似乎是一个相当简单的问题,但似乎无法弄明白.我一直在关注Heroku的Django指令(https://devcenter.heroku.com/articles/django#using-a-different-wsgi-server)

我正在尝试创建一个Procfile,在Foreman启动时在本地运行它.我已经下载并安装了Gunicorn和Gevent,在我的root中手动添加了一个名为Procfile的.txt文件(让我知道是否有更好的方法来执行此操作,然后添加新的文本文件并将其命名为Procfile),但Foreman启动仍然保持返回

 (venv)c:\users\chris\hellodjango>foreman start    
 ERROR: Procfile does not exist.
Run Code Online (Sandbox Code Playgroud)

这是我的目录:

hellodjango/
.gitignore
manage.py
requirements.txt
Procfile.txt
hellodjango/
    __init__.py
    __init__.pyc
    settings.py
    settings.pyc
    urls.py
    urls.pyc
    wsgi.py
    wsgi.pyc
venv/
    Include/
    Lib/
    Scripts/ 
Run Code Online (Sandbox Code Playgroud)

我的requirements.txt内容是

Django==1.4.2
distribute==0.6.28
dj-database-url==0.2.1
psycopg2==2.4.5
wsgiref==0.1.2
gunicorn==0.15.0
Run Code Online (Sandbox Code Playgroud)

我的Procfile.txt内容是

web: gunicorn hellodjango.wsgi -b 0.0.0.0:$PORT
Run Code Online (Sandbox Code Playgroud)

我错过了什么,为什么我的应用程序找不到ProcFile?

python django heroku gunicorn

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

将媒体从Heroku上传到Amazon S3

Heroku和Amazon S3的新手,请耐心等待.将我的Django应用程序上传到Heroku,并且用户媒体上传时出现问题.模型如下:

#models.py
class Movie(models.Model):
    title           = models.CharField(max_length = 500)
    poster          = models.ImageField(upload_to = 'storages.backends.s3boto')
    pub_date        = models.DateTimeField(auto_now_add = True)
    author          = models.ForeignKey(User)
Run Code Online (Sandbox Code Playgroud)

poster属性是上传图像的属性.我在本地运行良好,现在在Heroku上有一个错误.所以我添加了'storages.backends.s3boto',正如许多其他帖子告诉我的那样.(不确定是否正确).

我的Settings.py文件现在看起来像这样,有点混乱:

#settings.py
PROJECT_ROOT   = os.path.abspath(os.path.dirname(__file__))
PROJECT_DIR    = os.path.join(PROJECT_ROOT, '../qanda')

DEFAULT_FILE_STORAGE    = 'storages.backends.s3boto.S3BotoStorage'
STATICFILES_STORAGE     = 'storages.backends.s3boto.S3BotoStorage'

AWS_ACCESS_KEY_ID         = '****************'
AWS_SECRET_ACCESS_KEY     = '************'
AWS_STORAGE_BUCKET_NAME   = 'mrt-assets'
AWS_PRELOAD_METADATA      = True

MEDIA_ROOT = os.path.join(PROJECT_ROOT, 'qanda/media/movie_posters/)
MEDIA_URL = '/media'
STATIC_ROOT = os.path.join(PROJECT_ROOT, 'staticfiles')
STATIC_URL = 'https://mrt-assets.s3.amazonaws.com/static/'
STATICFILES_DIRS = (os.path.join(PROJECT_DIR, 'static'),)
Run Code Online (Sandbox Code Playgroud)

我的存储桶被称为mrt-assets,其中有2个静态文件夹(css,js,images和media.我现在不太担心静态文件,因为我已经将CSS/JS文件硬编码到我的HTML文件*,但如何将我的用户上传媒体(任何类型的图像)放入mrt-assets/media?

*虽然如果有人想帮助STATIC文件也会很棒.但用户上传媒体更为紧迫.

编辑(根据Yuji的评论):

尝试过多种选择,但都没有.我已经回去并删除了很多更改,现在这是我的设置

#settings.py
PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__))
MEDIA_ROOT = 'http://s3.amazonaws.com/mrt-assets/media/' …
Run Code Online (Sandbox Code Playgroud)

python django heroku amazon-s3

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

.gitignore没有忽略文件Django

所以我正在用一个名为hellodjango的虚拟应用程序测试Heroku,并将所有内容推送到git.

添加了我的.gitignore文件(告诉我,如果我错了,我创建了一个名为django.gitignore的文本文档,内容为1行,没有空格,venv*.log*.pot*.pyclocal_settings.py.

不知道我做错了什么,但这是我的目录

hellodjango/
    django.gitignore
    manage.py
    requirements.txt
    hellodjango/
        __init__.py
        __init__.pyc
        settings.py
        settings.pyc
        urls.py
        urls.pyc
        wsgi.py
        wsgi.pyc
    venv/
        Include/
        Lib/
        Scripts/
Run Code Online (Sandbox Code Playgroud)

所以我不想播放任何.pyc文件或venv文件夹.

在我的命令行中,我输入

git init

Initialized empty Git repository in /Users/Chris/hellodjango/.git/
>git add .
>git status
Run Code Online (Sandbox Code Playgroud)

当我输入git status时,venv和.pyc中的所有文件都会被暂存.为什么.gitignore不工作?

python git django heroku gitignore

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

Django URL conf conf重定向到错误的视图

为大学生写一个应用程序 - 显示一个部门列表,你点击一个,然后它会显示该部门的课程,点击一个,然后显示教授该课程的教授.

遇到网址问题 - 我的应用程序会将我重定向到错误的视图.

所以我有3个型号

class Department(models.Model):
    subject         = models.CharField(max_length = 25)
    pub_date        = models.DateTimeField(auto_now_add = True)

    def __unicode__(self):
        return self.subject

class Course(models.Model):
    department      = models.ForeignKey(Department)
    course_number   = models.CharField(max_length = 50)
    course_name     = models.CharField(max_length = 100, blank = True, null = True)
    c_pub_date      = models.DateTimeField(auto_now_add = True)

    def __unicode__(self):
        return self.course_number

class Professor(models.Model):
    course          = models.ForeignKey(Course)
    prof_name       = models.CharField(max_length = 50)
    p_pub_date      = models.DateTimeField(auto_now_add = True)

    def __unicode__(self):
        return self.prof_name
Run Code Online (Sandbox Code Playgroud)

然后我的应用程序URL conf将转到视图,课程和教授,具体取决于URL

urlpatterns = patterns('qanda.views',
    url(r'^$', 'index'),
    url(r'(?P<department_id>\d+)/$', …
Run Code Online (Sandbox Code Playgroud)

python django url

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

Django静态URL无法正确呈现图像

我正在编写一个在页面上显示一组图像的视图.

这是模型

#models.py
class Movie(models.Model):
    title  = models.CharField(max_length = 500)
    poster = models.ImageField(upload_to = 'qanda/static/movie_posters')

#index.html
    <img src = "{{ STATIC_URL }}movie_posters/{{ movie.poster }}"></a>
Run Code Online (Sandbox Code Playgroud)

当我运行服务器时,图像不会出现.图像尝试加载的URL是

http://127.0.0.1:8000/static/movie_posters/qanda/static/movie_posters/image.jpg
Run Code Online (Sandbox Code Playgroud)

当它应该尝试加载的URL是

http://127.0.0.1:8000/static/movie_posters/image.jpg
Run Code Online (Sandbox Code Playgroud)

我的假设是,因为movie.poster位于'qanda/static/movie_posters',当我在HTML上呈现它时,它正在加载静态URL(127.0.0:8000 /静态),然后是位置'qanda/static /最后是movie_posters.如何正确渲染图像?

html python django url static

0
推荐指数
1
解决办法
1466
查看次数