我正在使用django rest框架来创建API.我有以下型号:
class Category(models.Model):
name = models.CharField(max_length=100)
def __unicode__(self):
return self.name
class Item(models.Model):
name = models.CharField(max_length=100)
category = models.ForeignKey(Category, related_name='items')
def __unicode__(self):
return self.name
Run Code Online (Sandbox Code Playgroud)
要为我要做的类别创建一个序列化器:
class CategorySerializer(serializers.ModelSerializer):
items = serializers.RelatedField(many=True)
class Meta:
model = Category
Run Code Online (Sandbox Code Playgroud)
......这会为我提供:
[{'items': [u'Item 1', u'Item 2', u'Item 3'], u'id': 1, 'name': u'Cat 1'},
{'items': [u'Item 4', u'Item 5', u'Item 6'], u'id': 2, 'name': u'Cat 2'},
{'items': [u'Item 7', u'Item 8', u'Item 9'], u'id': 3, 'name': u'Cat 3'}]
Run Code Online (Sandbox Code Playgroud)
我如何从Item序列化器获得反向,即:
[{u'id': 1, 'name': 'Item 1', 'category_name': u'Cat …Run Code Online (Sandbox Code Playgroud) 我有一个在Debian服务器上运行的MySQL实例,我可以在本地连接到它,没有任何问题.但是,我无法远程连接到它.当我从命令行尝试这个时,我收到以下错误:
ERROR 2003 (HY000): Can't connect to MySQL server on '<server-ip>' (110)
Run Code Online (Sandbox Code Playgroud)
我已将用户添加到mysql为'user'@'*'和'user'@'localhost'.此服务器中的skip-networking设置为false,并在my.cnf中注释掉绑定地址.我还尝试使用以下命令在iptables中打开端口3306:
/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
这是我所有iptable防火墙规则的列表,我使用iptables -L进行了检索:
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere
REJECT tcp -- anywhere anywhere tcp dpt:auth reject-with icmp-port-unreachable
ACCEPT icmp -- anywhere anywhere icmp type 8 code 0 state NEW,RELATED,ESTABLISHED,UNTRACKED
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp -- anywhere anywhere tcp spts:1024:65535 dpt:ftp state NEW
ACCEPT tcp …Run Code Online (Sandbox Code Playgroud) 我有一个MySQL服务器,它的默认存储引擎设置为InnoDB.我有一个项目,要求数据库中的表是MyISAM.我想创建一个带有标志的数据库,将默认存储引擎设置为MyISAM.这是否可以在不更改服务器默认值的情况下,也无需手动指定每个表?
我现在正在玩 PHP 的DOMDocument。正如问题所述,这两种方法之间有什么区别(除了需要将 DOMAttr 传递给 setAttributeNode 之外)以及应该在什么情况下使用它们?
我有一个django网站,它使用Haystack和Xapian后端进行搜索索引.我为其中一个被索引的模型添加了一个新字段,然后将该字段添加到该模型的SearchIndex中.我跑了:
python manage.py update_index
要更新索引,但我收到以下错误:
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "/usr/local/lib/python2.6/dist-packages/django/core/management/__init__.py", line 438, in execute_manager
utility.execute()
File "/usr/local/lib/python2.6/dist-packages/django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python2.6/dist-packages/django/core/management/base.py", line 191, in run_from_argv
self.execute(*args, **options.__dict__)
File "/usr/local/lib/python2.6/dist-packages/django/core/management/base.py", line 220, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python2.6/dist-packages/django_haystack-1.0.1_final-py2.6.egg/haystack/management/commands/update_index.py", line 51, in handle
self.handle_app(None, **options)
File "/usr/local/lib/python2.6/dist-packages/django_haystack-1.0.1_final-py2.6.egg/haystack/management/commands/update_index.py", line 107, in handle_app
index.backend.update(index, small_cache_qs[start:end])
File "/usr/local/lib/python2.6/dist-packages/xapian_haystack-1.1.3beta-py2.6.egg/xapian_backend.py", line 204, in update
data = index.prepare(obj)
File "/usr/local/lib/python2.6/dist-packages/django_haystack-1.0.1_final-py2.6.egg/haystack/indexes.py", line 102, in prepare …Run Code Online (Sandbox Code Playgroud) 我正在创建一个基于Webpack和angular的应用程序.我正在尝试使用Mocha和Chai为单元测试添加Karma.但是,当我尝试运行我的测试时,我收到以下错误:
Chrome 52.0.2743 (Linux 0.0.0) ERROR
Uncaught SyntaxError: Unexpected token import
at app/app.js:3
Run Code Online (Sandbox Code Playgroud)
正如您在下面的webpack配置中看到的,我正在使用babel-loader.我已经用Google搜索了这个问题并在StackOverflow上进行了搜索,虽然有很多结果,但提出的解决方案都没有对我有用.
这是我的Webpack配置:
'use strict';
const webpack = require('webpack');
const path = require('path');
const autoprefixer = require('autoprefixer');
const APP = __dirname + '/app';
module.exports = {
context: APP,
entry: {
app: ['webpack/hot/dev-server', './core/bootstrap.js',],
},
output: {
path: APP,
filename: 'bundle.js',
},
module: {
loaders: [
{
test: /\.html$/,
loader: 'raw',
},
{
test: /\.(jpe?g|png|gif|svg)$/i,
loaders: [
'file?hash=sha512&digest=hex&name=img/[path][hash].[ext]',
'image-webpack',
],
},
{
test: /\.scss$/,
loader: 'style!css!postcss!sass!sass-resources!scsslint',
},
{
test: …Run Code Online (Sandbox Code Playgroud) 我在python中构建一个应用程序.我正在使用sqlalchemy-migrate来跟踪我的数据库架构.我有一个表user_category,它有两列:id和name.我正在尝试使用user_category表的外键创建一个用户表.我创建用户表的更改脚本如下:
from sqlalchemy import *
from migrate import *
from migrate.changeset import *
meta = MetaData()
user_category = Table('user_category', meta)
user = Table('user', meta,
Column('id', Integer, primary_key=True),
Column('email', String(255)),
Column('first_name', String(40)),
Column('surname', String(40)),
Column('password', String(255)),
Column('user_category', Integer, ForeignKey("user_category.id")),
)
def upgrade(migrate_engine):
# Upgrade operations go here. Don't create your own engine; bind migrate_engine
# to your metadata
meta.bind = migrate_engine
user.create()
def downgrade(migrate_engine):
# Operations to reverse the above upgrade go here.
meta.bind = migrate_engine
user.drop()
Run Code Online (Sandbox Code Playgroud)
当我运行'manage.py test'时,我得到并且错误: …
我有以下视图扩展基础CreateView:
class PeopleImportCsv(FailedLoginMessageMixin, CreateView):
model = CsvFile
form_class = CustomerCsvImportForm
template_name = 'people/customer_uploadcsv_form.html'
def get_success_url(self):
url = reverse('customer_process_csv', args=[self.object.id])
return url
def form_valid(self, form):
instance = form.save(commit=False)
instance.uploaded_by = self.request.user
super(PeopleImportCsv, self).form_valid(form)
Run Code Online (Sandbox Code Playgroud)
我正在使用get_success_url()方法,因此我可以在数据库中获取新创建的对象的id.但是,当我尝试提交表单时,我收到以下ValueError消息:
The view people.views.PeopleImportCsv didn't return an HttpResponse object.
Run Code Online (Sandbox Code Playgroud)
如果我assert False在get_success_url()中分配url之后立即放置一个,那么我可以看到它有正确的url我期待所以我该怎么做才能解决这个问题?
我正在使用django 1.5.5.对于我的项目.我有一些模型,其中一些模型具有多对多字段:
class ScreeningFormat(CorecrmModel):
name = models.CharField(max_length=100)
class Film(CorecrmModel):
title = models.CharField(max_length=255)
screening_formats = models.ManyToManyField(ScreeningFormat)
class Screen(CorecrmModel):
name = models.CharField(max_length=100)
screening_formats = models.ManyToManyField(ScreeningFormat)
class FilmShow(CorecrmModel):
film = models.ForeignKey(Film)
screen = models.ForeignKey(Screen)
screening_formats = models.ManyToManyField(ScreeningFormat)
Run Code Online (Sandbox Code Playgroud)
我为FilmShow创建了一个自定义管理表单,它有一个clean_screening_formats方法:
class FilmShowAdminForm(admin.ModelForm):
def clean_screening_formats(self):
# Make sure the selected screening format exists in those marked for the film
screening_formats = self.cleaned_data['screening_formats']
film_formats = self.cleaned_data['film'].screening_formats.all()
sf_errors = []
for (counter, sf) in enumerate(screening_formats):
if sf not in film_formats:
sf_error = forms.ValidationError('%s is not a …Run Code Online (Sandbox Code Playgroud) django ×4
mysql ×2
python ×2
debian ×1
django-admin ×1
django-forms ×1
dom ×1
iptables ×1
javascript ×1
karma-runner ×1
php ×1
sqlalchemy ×1
testing ×1
webpack ×1