救命!
我有以下两种型号:
class Account(models.Model):
username = models.OneToOneField(User, primary_key=True, unique=True)
receiveaddress = models.CharField(max_length=40, blank=True, null=True, unique=True)
balance = models.DecimalField(max_digits=16, decimal_places=8, default=0)
def __str__(self):
return str(self.username)
class Deposits(models.Model):
receiveaddress = models.CharField(max_length=40, blank=True, null=True, unique=True)
amount = models.DecimalField(max_digits=16, decimal_places=8, default=0)
user = ?????????????????
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
confirmed = models.BooleanField(default=False)
accounted = models.BooleanField(default=False)
def __str__(self):
return str(self.receiveaddress)
Run Code Online (Sandbox Code Playgroud)
示例: 可视化
我的问题:
我希望"Deposits.user" 自动引用此"receiveaddress"所属的用户.在这个例子中,那是TIM.我浪费了6个小时试图搞清楚,我做错了什么?
提前致谢.
我有以下 MongoEngine 文档
{
'_id': 'some_id',
'data': 'some_data'
}
Run Code Online (Sandbox Code Playgroud)
如何delete使用 MongoEngine 编写此文档?
我试过的:
import my_collection
obj = my_collection.MyCol.objects.get(_id='some_id')
# obj is correctly found - let's continue
obj.delete()
# mongoengine.errors.ValidationError: 'None' is not a valid ObjectId
obj.delete('some_id')
# TypeError: delete() takes 1 positional argument but 2 were given
obj.delete(_id='some_id')
# mongoengine.errors.ValidationError: 'None' is not a valid ObjectId
Run Code Online (Sandbox Code Playgroud)
--注意
奇怪的是,以下工作完美:
my_collection.MyCol.objects.delete()
# delete all documents in the collection
Run Code Online (Sandbox Code Playgroud)
但是我已经关注了MongoEngine文档,但仍然无法仅删除一个特定的文档。
我正在web-app使用Django v1.9 实现一个.我需要部署和配置网站尽可能万无一失.
所以我想实现首次使用场景,它允许站点管理员通过站点本身配置站点.
显而易见的候选者是表单向导.
该站点需要配置几个资源.它可以具有每个资源的多个实例,但每个资源必须至少有一个实例.
因此,最小的首次使用序列可能是:
稍后,管理员需要为这些资源定义其他实例,上面的步骤1和步骤2足够复杂,每个都需要自己保证FormWizard; 特别是因为它们需要独立使用来配置每种资源类型的其他实例.
这意味着我的第一个使用场景实际上是
我的心告诉我,我应该能够以这种方式嵌套向导,获得良好的功能重用.Django和Python一般都是关于DRY的.
但我很难解决如何解决问题.我一直在谷歌搜索和试验足够的时间,觉得这里没有任何东西.
可以这样做吗?如果是这样,怎么样?
编辑:
试着澄清一下.假设每个向导都有一个与之关联的基于函数的视图
def AddResource1view(request):
# Display the pages of the wizard to build object 1
# for model Resource1
object1.save()
return object1
def AddResource2view(request):
# Display the pages of the wizard to build object 2
# for model Resource2
object2.save()
return object2
def FirstUseView(request):
config = SystemConfiguration()
config.r1 = AddResource1view(request)
config.r2 = …Run Code Online (Sandbox Code Playgroud) 我正在使用Django渠道小组来构建聊天系统,并希望获取聊天室中的所有用户.
集团提供以下方法:
Group("group_name").add(message.reply_channel)Group("group_name").discard(message.reply_channel)Group("group_name").send({"text": "My group message",})但是没有什么可以找到Group中的所有用户(reply_channel).
谢谢
Django为我们提供了ArrayField:一个PostgreSQL特定的模型字段,允许存储数据列表.
我用它来模拟Article对象:
authors = ArrayField(models.Charfield)
title = models.CharField
Run Code Online (Sandbox Code Playgroud)
例如,这是数据库中的一个条目:
我想将所有文章导出为JSON:
query_set = Article.objects.all()
articles_json = serialize('json', fields('authors', 'title')
Run Code Online (Sandbox Code Playgroud)
ArrayField"authors"的序列化使用四个反斜杠而不是两个反转字符"é".常规"标题"字段已正确转义.看看差异:
articles_json = {"title":"Sur le terrain cr\\u00e9tac\\u00e9 de Li\\u00e9ge", "authors": "[\\"Pierre St\\\\u00e9\\", "Jacques Dupont"]"}
Run Code Online (Sandbox Code Playgroud)
客户不理解这一点.为了使它工作,我只是搜索并替换字符串
articles_json = articles_json.replace('\\\\','\\')
Run Code Online (Sandbox Code Playgroud)
我真的不确定这个解决方法.你有没有试过这个问题?你是怎么解决的?
我想实现一个"TrimDirective",它使用Angular 2 RC 5和模型驱动/反应形式从输入字段中删除前导和尾随空格.
我设法更改输入字段的值,但是我没有在组件中获得新值myForm.valueChanges().
请参阅此plunker:http://plnkr.co/edit/ruzqCh?p = preview
当指令更改值时,如何触发formGroup的更新?
模板:
<form [formGroup]="myForm">
<input formControlName="name" trim>
</form>
latest value: -{{ latestValue }}-
Run Code Online (Sandbox Code Playgroud)
组件:
@Component({
selector: 'my-app',
templateUrl: 'app/app.html'
})
export class AppComponent implements OnInit {
private myForm: FormGroup;
private latestValue: string;
ngOnInit() {
this.myForm = new FormGroup({
name: new FormControl(),
});
this.myForm.valueChanges.subscribe(v => this.latestValue = v.name)
}
}
Run Code Online (Sandbox Code Playgroud)
指令:
@Directive({
selector: '[trim]'
})
export class TrimDirective {
private el: any;
constructor(
el: ElementRef
){ …Run Code Online (Sandbox Code Playgroud) 我正在使用postgres映像在本地运行容器。我需要处理大量数据,并且我想为此使用外部硬盘驱动器。是否可以在外部硬盘驱动器上装载卷?我可以用Flocker完成我想要的吗?
我正在为Mac使用本机docker。
我安装了在mac上运行python的pika
sudo pip install pika==0.9.8
Run Code Online (Sandbox Code Playgroud)
我确定已安装,这是尝试重新安装时的响应,
Requirement already satisfied (use --upgrade to upgrade): pika==0.9.8 in /usr/local/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)
但是当我在*.py上导入鼠兔时,我得到了,
ImportError:没有名为pika的模块
我的python版本
python --version
Python 2.7.5
Run Code Online (Sandbox Code Playgroud)
如何使这个模块被Python识别?谢谢!
编辑1
我这样称之为导入
import pika
Run Code Online (Sandbox Code Playgroud)
这给出了错误,我可以用这个临时修复,
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)
那么如何使路径永久化?谢谢!
我有以下两个类,我app.models正在使用 wagtail API 将数据作为 json
class AuthorMeta(Page):
author=models.OneToOneField(User)
city = models.ForeignKey('Cities', related_name='related_author')
class Cities(Page):
name = models.CharField(max_length=30)
Run Code Online (Sandbox Code Playgroud)
因此,当我尝试时/api/v1/pages/?type=dashboard.AuthorMeta&fields=title,city,它返回以下数据:
{
"meta": {
"total_count": 1
},
"pages": [
{
"id": 11,
"meta": {
"type": "dashboard.AuthorMeta",
"detail_url": "http://localhost:8000/api/v1/pages/11/"
},
"title": "Suneet Choudhary",
"city": {
"id": 10,
"meta": {
"type": "dashboard.Cities",
"detail_url": "http://localhost:8000/api/v1/pages/10/"
}
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
在城市字段中,它返回城市的id和meta。如何在不进行额外查询的情况下在此处的响应中获取城市名称?:/
我在文档中找不到任何解决方案。我错过了什么吗?
我正在尝试使用curl制作一个'put'方法,一切工作正常,并且我得到了JSON:
curl -X PUT -d '[{"foo":"more_foo"}]' http://ip:6001/whatever?api_key=whatever
Run Code Online (Sandbox Code Playgroud)
但是由于某些原因,如下所示使用python requests模块:
import requests
url = 'http://ip:6001/whatever?api_key=whatever'
a = requests.put(url, data={"foo":"more_foo"})
print(a.text)
print(a.status_code)
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
500内部服务器错误
内部服务器错误
服务器遇到内部错误,无法完成您的请求。服务器超载或应用程序中有错误。
注意:服务器已启动并正在运行。
python ×7
django ×5
angular ×1
chat ×1
database ×1
docker ×1
encoding ×1
flocker ×1
http ×1
javascript ×1
json ×1
mongodb ×1
mongoengine ×1
pika ×1
postgresql ×1
python-2.7 ×1
python-3.x ×1
python-pika ×1
wagtail ×1