我的项目正在发展。 我经常删除数据库并运行manage.py syncdb从头开始设置我的应用程序。 不幸的是,这总是popup: You just installed Django's auth system, which means you don't have any superusers defined. Would you like to create one now? (yes/no): 然后你提供了一个用户名,有效的电子邮件地址和密码。 这很乏味。 我厌倦了inputtest\nx@x.com\ntest\ntest\n 。 如何在运行manage.py syncdb时自动跳过此步骤并以编程方式创build用户?
我被static root困惑,想澄清事情。 要在Django中提供静态文件,请在settings.py和urls.py : import os PROJECT_DIR=os.path.dirname(__file__) 1.应该收集静态文件的目录的绝对path STATIC_ROOT= os.path.join(PROJECT_DIR,'static_media/') 2.静态文件的URL前缀 STATIC_URL = '/static/' 3.静态文件的其他位置 STATICFILES_DIRS = ( os.path.join(PROJECT_DIR,'static/'),) …和urls.py的以下几行: from django.contrib.staticfiles.urls import staticfiles_urlpatterns urlpatterns += patterns('', ( r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT} )) 我们也使用python manage.py collectstatic 问题: 任何人都可以请解释我的工作stream程:理想的情况下应该怎么做。 截至目前,我复制/粘贴上述代码片段到他们指定的位置,并继续在静态目录中创build新文件,它的工作原理。 在我的settings.STATIC_ROOT ,但是,我指出了一个不同的目录。 如果有人能够解释每个环境的工作stream程:如何收集和pipe理文件,以及遵循什么是一个好的做法,这将是非常好的。 谢谢。
我最近从Django 1.6切换到1.7,我开始使用迁移(我从来没有使用南)。 在1.7之前,我曾经用一个fixture/initial_data.json文件加载了初始数据,该文件使用python manage.py syncdb命令加载(创build数据库时)。 现在,我开始使用迁移,并且此行为已被弃用: 如果应用程序使用迁移,则不会自动加载灯具。 由于Django 2.0中的应用程序需要进行迁移,因此此行为被视为弃用。 如果您想加载应用程序的初始数据,请考虑在数据迁移中进行。 ( https://docs.djangoproject.com/en/1.7/howto/initial-data/#automatically-loading-initial-data-fixtures ) 官方文档没有清楚的例子,所以我的问题是: 使用数据迁移导入此类初始数据的最佳方法是: 通过多次调用mymodel.create(…)来编写Python代码, 使用或编写Django函数( 如调用loaddata )从JSON fixture文件加载数据。 我更喜欢第二个选项。 我不想使用南方,因为现在Django似乎可以自己做到。
我打算在现有的Django项目中重新命名几个模型,其中有许多其他模型与我想要重命名的模型有外键关系。 我相当肯定这将需要多次迁移,但我不确定确切的程序。 比方说,我从一个名为myapp的Django应用程序中的以下模型开始: class Foo(models.Model): name = models.CharField(unique=True, max_length=32) description = models.TextField(null=True, blank=True) class AnotherModel(models.Model): foo = models.ForeignKey(Foo) is_awesome = models.BooleanField() class YetAnotherModel(models.Model): foo = models.ForeignKey(Foo) is_ridonkulous = models.BooleanField() 我想重命名Foo模型,因为这个名字没有意义,并且在代码中造成混乱,而Bar会使得名称更清晰。 从我读过的Django开发文档中,我假设了以下迁移策略: 步骤1 修改models.py : class Bar(models.Model): # <– changed model name name = models.CharField(unique=True, max_length=32) description = models.TextField(null=True, blank=True) class AnotherModel(models.Model): foo = models.ForeignKey(Bar) # […]
尝试从命令行运行Django时出现以下错误。 File manage.py, line 8, in <module> from django.core.management import execute_from_command_line ImportError: No module named django.core.management 任何想法如何解决这个问题?
我正在寻找一种方式来使用类似django中的模数运算符。 我正在试图做的是给循环中的每个第四个元素添加一个类名。 与模数它看起来像这样: {% for p in posts %} <div class="post width1 height2 column {% if forloop.counter0 % 4 == 0 %}first{% endif %}}"> <div class="preview"> </div> <div class="overlay"> </div> <h2>p.title</h2> </div> {% endfor %} 当然这不起作用,因为%是一个保留字符。 有没有其他方法可以做到这一点?
这段代码在django / db / models / fields.py中它创build/定义了一个exception? class ReverseSingleRelatedObjectDescriptor(six.with_metaclass(RenameRelatedObjectDescriptorMethods)): # This class provides the functionality that makes the related-object # managers available as attributes on a model class, for fields that have # a single "remote" value, on the class that defines the related field. # In the example "choice.poll", the poll attribute is a […]
首先,我创build我的数据库。 create database mydb; 我添加“南”来安装应用程序。 然后,我去到这个教程: http : //south.aeracode.org/docs/tutorial/part1.html 教程告诉我这样做: $ py manage.py schemamigration wall –initial >>> Created 0001_initial.py. You can now apply this migration with: ./manage.py migrate wall 太棒了,现在我正在迁徙。 $ py manage.py migrate wall 但它给了我这个错误… django.db.utils.DatabaseError: (1146, "Table 'fable.south_migrationhistory' doesn't exist") 所以我使用谷歌(这从来没有工作,因此我的870问题在Stackoverflow问),我得到这个网页: http : //groups.google.com/group/south-users/browse_thread/thread/d4c83f821dd2ca1c 好的,所以我遵循这个指示 >> Drop database mydb; >> Create database mydb; […]
我有一个像这样的模板呈现的input字段: <div class="field"> {{ form.city }} </div> 其中呈现为: <div class="field"> <input id="id_city" type="text" name="city" maxlength="100" /> </div> 现在假设我想要为呈现的input元素添加一个autocomplete =“off”属性,我该怎么做? 或者onclick =“xyz()”或class =“my-special-css-class”?
我正在configuration一个使用服务器文件系统来存储应用程序静态文件( STATIC_ROOT )和用户上传文件( MEDIA_ROOT )的Django项目。 我现在需要在亚马逊的S3上托pipe所有这些内容,所以我为此创build了一个存储桶。 使用django-storages与boto存储后端,我设法上传收集的静态到S3存储桶: MEDIA_ROOT = '/media/' STATIC_ROOT = '/static/' DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage' AWS_ACCESS_KEY_ID = 'KEY_ID…' AWS_SECRET_ACCESS_KEY = 'ACCESS_KEY…' AWS_STORAGE_BUCKET_NAME = 'bucket-name' STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage' 然后,我遇到了一个问题:在STATIC_ROOT中没有使用MEDIA_ROOT和STATIC_ROOT ,所以bucket root同时包含静态文件和用户上传的path。 那么我可以设置: S3_URL = 'http://s3.amazonaws.com/%s' % AWS_STORAGE_BUCKET_NAME STATIC_URL = S3_URL + STATIC_ROOT MEDIA_URL = 'S3_URL + MEDIA_ROOT 并在模板中使用这些设置,但是在使用django-storages存储在S3中时,没有静态/媒体文件的区别。 如何做到这一点? 谢谢!