我在django中有一个模型,我只想更新,也就是说,当我调用它并设置数据时,它不会创建新记录,只更新现有记录.我怎样才能做到这一点?这是我有的:
class TemperatureData(models.Model):
date = models.DateTimeField()
value = models.PositiveIntegerField()
alert = models.BooleanField()
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个模型,我可以在其中存储其他应用程序的用户名和密码.如何在Django中设置密码字段,使其在管理员中不是纯文本?提前致谢.
我在从表单中保存多个字段时遇到问题.这是我的模特:
class TextIssue(models.Model):
Issue = models.CharField(max_length=150, unique=True)
def __unicode__(self):
return self.Issue
class PadIssue(models.Model):
Issue = models.CharField(max_length=150, unique=True)
def __unicode__(self):
return self.Issue
class PHIssue(models.Model):
Data = models.ForeignKey(Data)
TextIssue = models.ManyToManyField(TextIssue, blank=True, null=True)
PadIssue = models.ManyToManyField(PadIssue, blank=True, null=True)
Notes = models.TextField()
def clean(self):
from django.core.exceptions import ValidationError
if self.TextIssue is None and self.PadIssue is None:
raise ValidationError('You must choose at least one issue category.')
if self.Notes is None:
raise ValidationError('You must write a note regarding the issues selected above.')
class PHIssueForm(ModelForm):
class …
Run Code Online (Sandbox Code Playgroud) 我的models.py中有以下内容:
class HostData(models.Model):
Manager = models.ForeignKey(Managers)
Host = models.CharField(max_length=50, null=True)
HostStatus = models.CharField(max_length=200, null=True)
Cpu = models.PositiveIntegerField(max_length=10, null=True)
Disk = models.FloatField(null=True)
Run Code Online (Sandbox Code Playgroud)
我想返回与某个"Manager"相关的对象的查询.问题是用户可以根据需要添加/删除尽可能多的管理员.所以我最初的想法是在我的views.py中有这样的东西:
def get_data(request):
for server in Managers.objects.all():
host_data = HostData.objects.filter(Manager=server)
# Lost after this :(
return render_to_response('mypage.html', {'first_set': host_data1, 'second_set': host_data2})
Run Code Online (Sandbox Code Playgroud)
那么,我怎样才能返回多个对象?就像用户添加另一个"管理器"一样,我将在views.py中获得第三组.
我正在使用一个 Django 应用程序,它的增长超出了我的预期,现在需要归档一些数据,这样它就不会减慢最终的查询速度。我的问题是,归档现有模型的最佳方法是什么?到目前为止,这是我的想法:
1 - 创建继承模型:
class OriginalModel(models.Model):
...
field = models.CharField(etc...)
...
class ArchivedModel(OriginalModel):
pass
Run Code Online (Sandbox Code Playgroud)
2 - 创建一个 post_save 方法,以便每当将某些内容保存到我的原始模型时,它也会创建一个存档实例。
3 - 在我的原始模型上使用 celery 创建一个清除任务,以仅保留相关数据。
不过,我不确定模型继承是否会按我的预期工作。如果有人对此有任何意见,我将不胜感激。
我有一个程序可以使用 paramiko 通过 ssh 获取一些数据:
ssh = paramiko.SSHClient()
ssh.connect(main.Server_IP, username=main.Username, password=main.Password)
ssh_stdin_host, ssh_stdout_host, ssh_stderr_host =ssh_session.exec_command(setting.GetHostData)
Run Code Online (Sandbox Code Playgroud)
我想从 ssh_stdout_host 中删除前 4 行。我尝试使用 StringIO 来使用这样的读取行:
output = StringIO("".join(ssh_stdout_host))
data_all = output.readlines()
Run Code Online (Sandbox Code Playgroud)
但此后我迷失了。什么是好的方法?我使用 python 2.6.5。谢谢。
我有以下swf:
<head>
# load js
<script>
function graph() {
swfobject.embedSWF(
"open-flash-chart.swf", "chart", "400", "180", "9.0.0", "expressInstall.swf",
{"data-file":"{% url monitor-graph %}"});
};
</script></head>
<div id="chart"> </div>
<script>
graph();
</script>
Run Code Online (Sandbox Code Playgroud)
我想只在swf尚未加载的情况下调用图形函数,有没有办法做到这一点?谢谢.
我有一个模型可以选择CHOICES中定义的选项,如下所示:
CHOICES = (
('1', '1'),
('2', '2'),
('3', '3'),
)
class select(models.Model):
first = models.CharField(max_length=3, choices=CHOICES)
second = models.CharField(max_length=3, choices=CHOICES)
Run Code Online (Sandbox Code Playgroud)
我希望能够在管理页面中添加,删除或更改选项.所以我的方法是将CHOICES作为模型,但我不知道这是否是正确的方法.如果是,那我该怎么设置呢?谢谢.
django ×6
django-admin ×2
django-forms ×1
django-orm ×1
django-views ×1
javascript ×1
paramiko ×1
python ×1
python-3.x ×1
swfobject ×1