RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-317183

JBlack's questions

Martin Hope
JBlack
Asked: 2024-09-05 13:01:54 +0000 UTC

在 Debian 上安装特定版本的 Ansible

  • 5

如何在 Debian 11 上安装 Ansible 版本 2.17.3?

我尝试标准方法:

  1. 团队sudo apt install ansible
  2. 通过安装 PPA 存储库sudo apt-add-repository ppa:ansible/ansible

但在这两种情况下我都得到 Ansible 2.10 版本,但我需要 2.17.3 版本。

linux
  • 1 个回答
  • 32 Views
Martin Hope
JBlack
Asked: 2022-06-25 13:18:05 +0000 UTC

从 Git 存储库中删除文件或文件夹

  • 0

如何从已发布的存储库中删除文件/文件夹,尤其是从github?

我从本地存储库中删除了有关此主题的所有文章,而不是一篇如何从已发布的...中删除的文章

git
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2022-06-22 13:45:03 +0000 UTC

Django-Python。用正则表达式确定类对象的类型

  • 0

需要在模块的辅助功能中匹配模型对象的类型service。当然,简单的方法是

result = type(obj) is MyModel

MyModel但从模块导入models是service不可能的。我们必须在对象类型的文本输出中寻找匹配项:

result = 'MyModel' in str(type(t))

但是这种方法不是很可靠,因为。您正在寻找的文本不仅可以作为模型类。

我正在尝试使用正则表达式来实现这一点:

import re
result = re.match(r'.MyModel$', str(type(t))

例如,退房"<class '__main__.MyModel'>" 但

result = None

如何简洁地做到这一点?

python
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2022-06-14 15:53:10 +0000 UTC

姜戈。on_delete.model.SET() - 将对对象的引用设置为带参数的函数

  • 0

在模型的描述中,其中一个字段表示ForeignKey - 对另一个对象的引用。value替换中的字段参数on_delete = models.SET(value)可以是值或对函数的引用。

在这种情况下,需要在该函数中设置一个参数self来计算绑定对象的数量。

数据模型是具有各种类型内容的网页。页面上的内容对象有一些顺序,通过单向绑定到前一个对象来实现。如果在编辑页面期间删除了任何对象,则其后面的对象必须附加到相对于被删除对象的前一个对象,即 基于单链表。

模型.py

class Page(models.Model):
    """ Страница с контентом. """
    title = models.CharField('Заголовок', max_length=256)
    content = models.ManyToManyField('Content')
    # ...

class Content(models.Model):
    """ Модель контента страницы Page. """
    # корневой объект контента на странице
    is_root = models.BooleanField('Начальный?', default=False)
    # ссылка на предыдущий контент страницы
    previous = models.ForeignKey(
        'self'
        , null=True
        , default=None
        , related_name='next'
        , on_delete=models.SET(get_previous(self))
    )
    # ...  

这里的字段previous是对它自己的对象的引用——之前的内容。如果删除链接对象,则需要重新绑定。

我正在尝试使用get_previous( self)函数实现重新绑定,以便通过对象识别页面self并重新绑定其中的内容对象。

def get_previous(self):
    """ Возвращает ссылку на другой предыдущий контент после удаления связанного. """
    # ...
    return pk

问题。

Django 无法识别self上下文中的参数- 。on_delete = get_previous(self)Unresolved reference 'self'

有什么方法可以绕过这个错误?

django
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2021-11-11 19:32:36 +0000 UTC

考虑条件,从文本中提取括号中的最后一个值

  • 0

需要根据同一张表的另一列的初始值,为该表形成一列值,在每个单元格中包含一个形式的值:

1(ADCD);2(EFG);3(HJKLN)

正如我们所见,元素之间用分号“ ; ”隔开。需要隔离最后一个元素,并在新列的单元格中3(HJKLN)使用括号中的值。HJKLN在这种情况下,如果最后一个元素的形式5(CGHL)为 ,即在括号之外5,则跳过该元素并取倒数第二个元素。跳过所有带有 5 的元素:

例子

如何在 Excel 中执行此操作?

excel
  • 2 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-09-10 14:26:29 +0000 UTC

微软 Excel。将具有全名的字符串转换为姓氏 I.O

  • -1

需要将具有类型全名的列转换为MS Excel表中Фамилия Имя Отчество的类型Фамилия И.О.。手动不是一个选项,因为该列中有数千个条目。

Excel中是否有任何工具可以进行这样的操作,例如,根据给定的模板将原始列的数据转换为新数据并将其放入新列中?

似乎与文本相关的exel公式解决起来很麻烦,并且使用VBA脚本暗示了自己,但我根本不知道语法......虽然,算法很简单 - 完整的行name 被解析成一个单词列表,然后从这个列表的转换元素形成一个新行并存储在一个新单元格中。理论上,您需要添加将源的初始单元格和结果列指定为参数的功能。

excel
  • 3 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-08-19 19:47:50 +0000 UTC

JavaScript。在另一个脚本更改该字段后丢失与表单字段关联的变量的值

  • 0

一个简单的情况 - 两个 JS 脚本在一个 HTML 页面上工作并处理一个常见的表单字段。在一个脚本将值写入字段后,另一个脚本中包含对该字段的引用的变量变为not defined.

为什么?这种行为是否正常,在这种情况下如何“标准”才可能不失去与 HTML 元素的意义和联系?

HTML:

<input type="hidden" id="loc-value" value="123" />

第一个 JS 脚本:

// использует значение поля "loc-value"
let loc_value = document.getElementById("loc-value").value; // в глобальной области видимости 
... 

第二个js脚本:

// меняет значение в поле "loc-value" после прочтения 1-м скриптом 
document.getElementById('loc-value').value = '987';
...

在字段中写入值后,第一个脚本的变量变为未声明。范围不是原因。脚本彼此独立工作。

javascript
  • 2 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-05-21 20:19:12 +0000 UTC

Python。类类型名称的动态替换

  • 0

有必要实现一种访问数据库的方法以检索特定实例 - 具有特定编号的记录,例如,使用 Django 框架。目前为此目的使用了以下函数:

def get_instance(pk=None):
    ''' возвращает экземпляр модели из БД по ключю pk'''
    instance = Entry.objects.filter(id=pk) // Entry - тип модели в БД, он же класс объектов
    return instance[0] if instance.exists() else None

上面的函数使用指定的类名。

在这种情况下,如何引用数据库中的另一个模型,将其类型动态替换为该方法的参数?例如,使用 classType 参数,classType 的语法是什么?

 def get_instance(classType, pk=None):
    instance = classType.objects.filter(id=pk) // classType- тип модели в БД, он же класс объектов
    return instance[0] if instance.exists() else None
python
  • 2 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-04-15 14:00:27 +0000 UTC

姜戈。为用户隔离全局变量

  • 0

Django 项目为不同的视图view使用通用的全局变量。例如,menuand函数listing使用全局变量NON_APPROVED:

NON_APPROVED = Entries.objects.filter(approved=False) # глобальная переменная QuerySet
...

def menu(request):
    global NON_APPROVED
    ...
    context = { 'NON_APPROVED_CNT': NON_APPROVED.counter() } # количество экземпляров
    return context

def listing(request):
    global NON_APPROVED
    ... 
    context = { 'NON_APPROVED': NON_APPROVED } # список QuerySet
    context.update(menu(request))
    return render(request, '/template.html', context)

在这种情况下,全局变量NON_APPROVED对所有用户具有相同的值。这种方法与每个用户的会话完全隔离的假设结合使用。事实证明,这个假设是错误的,全局变量对所有工作用户都是可见的。但是,当任何用户更改其值时,都会出现“竞争”情况。

NON_APPROVED并且对于不同的用户 ,这些值必须是唯一的。

为此目的,普遍接受的技术是什么,包括 Django 推荐的技术,或者简单地说,适合跨用户组或个人用户隔离全局变量的解决方案?

django
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-03-26 22:35:14 +0000 UTC

使用 XMLHttpRequest 对象调用 Ajax 请求时的 HTML 页面加载完成问题

  • 1

纯JS代码。要从服务器请求数据,使用XMLHttpRequest-object 调用 AJAX 函数,请求正常完成,状态为200 (ОК),并且所有数据都完美地传递、处理和呈现在 HTML 页面中。

    Request = new XMLHttpRequest();
    ...  

    // конфигурирация запроса
    r_method = "POST"
    Request.open(r_method, "/url/", true);  

    // Проверяем, если требуется сделать POST-запрос
    if (r_method.toLowerCase() == "post") {
        // Если это POST-запрос устанавливаем заголовки:
        Request.setRequestHeader("Content-Type", "application/json; charset=utf-8"); 

        // Посылаем запрос
        Request.send(JSON.stringify({'data': data}));
    }
    ... 

    if (Request.readyState == 4) {
        // Передаем управление обработчику пользователя
        console.log("Статус запроса: " + Request.status + ", текст статуса:" + Request.statusText); // 200, ОК
        r_handler(Request); 
    }

处理程序r_handler(Request)从请求中提取数据,并且XMLHttpRequest-object 本身不会进一步使用:

    r_handler(Request) {
        serv_response = eval('('+ Request.responseText +')');
        ...
        // Request.abort(); // результат не меняется - признака конца загрузки HTML-страницы нет
    }

但是,在同一个页面上,另一个 JS 脚本与一个构造相关联"window.onload",并且一直在等待页面完成加载。

console.log("Скрипт работает");
window.onload = function () {
            console.log("Страница загружена");
}

毫无疑问,问题在于 HTML 页面正在等待加载结束,因为。没有构建window.onload一切正常。我尝试使用该方法接收数据后关闭连接.abort(),但没有任何改变。

在不使用带有 XMLHttpRequest 对象的脚本的情况下,页面上的加载完成标志可以正常工作!

这是什么情况,在这种情况下,到达加载HTML页面结束的标志是怎么回事?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-03-24 17:34:01 +0000 UTC

姜戈。模板和 cookie 中的 CSRF 令牌不匹配

  • 0

标准情况是在 Django 中处理 HTML 表单。在表单中的模板中{% csrf_token %},它应该是注册的。任务是使用纯 JS 方法在 ajax 函数中实现一个简单的功能,即 通过对象XMLHttpRequest。要使此功能与 Django 一起使用,您需要XMLHttpRequest通过csrf_token. 令牌的值由 JS 脚本通过以下命令从站点的 cookie 中获取:

var csrfCookie = document.cookie.match(/csrftoken=([\w-]+)/); 

并插入到 HTTP 请求标头中:

Request = new XMLHttpRequest();
Request.setRequestHeader("X-CSRFToken", csrfCookie);

令牌的值是正确的,但总是相同的,而模板中令牌的值总是不同的,应该是这样。因此,向服务器发送请求时会出现令牌不匹配错误。当然,令牌不匹配的问题现在已经解决了,但是通过hidden input在 Django 用于此目的的 HTML 表单中获取当前令牌的值的解决方法:

<input type="hidden" name="csrfmiddlewaretoken" value="CSRF-токен">

当前隐藏表单域token的值:

var csrfCookie = document.getElementsByName("csrfmiddlewaretoken")[0].value;

然而,原则上这个问题仍然悬而未决,因为不清楚为什么相同的 CSRF 令牌值存在于 cookie 中。顺便说一句,django 文档提供了一个 JS 脚本函数来获取这个值,并再次通过 cookie 处理。

对此有两个问题: 1.为什么在这种情况下,cookie 中的 CSRF 令牌的值不会随着 HTML 表单页面的每次更新而改变,而表单内部的令牌本身总是不同的。 2.实际上,当令牌的值可以从 cookie 或表单本身的隐藏输入中获取时,安全性在哪里?

ajax
  • 2 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-07-14 18:18:26 +0000 UTC

变量未显示在 Django 模板中

  • 0

有一个模板template使用menu操作员调用的子模式include

模板:

{% extends "app/layout.html" %}
    {% block content %}
        {% include 'app/menu.html' %} <!-- Вставка menu -->
... html-код ...

虽然“菜单”模板处理程序 URL 是在 URL 管理器中定义的,但它的引用仅由include.

从传递变量时,仅views显示staff与模型关联的变量user。

目前尚不清楚为什么会这样!而这种情况下如何通过模板实现变量的显示menu呢?

网址.py:

... 
url(r'^menu/$', app.views.menu, name='menu'), 
...

视图.py:

def menu(request):
    staff = request.user.staff   
    A = 888 
    B = 555
    template = 'app/menu.html'

    return render(request, template, {'staff': staff, 'A': A, 'B': B, })

菜单.html:

...
<ul class="nav navbar-nav">
    <li> 1:{{staff}}</li>
    <li> 2:{{A}}</li>                        
    <li> 3:{{B}}</li>
</ul>
...

结果,我们只有变量的输出staff:

1:Сотрудники ОТС
2:
3:
django
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-07-10 23:10:28 +0000 UTC

通过同一个Django模型字段的多个值过滤DB对象

  • 1

需要根据以下条件从数据库中过滤对象: -entryType模型字段Entry必须包含值'МРТ'or 'МСКТ'。

我正在尝试这些设计:

VK = Entry.objects.filter(entryType__icontains=['МРТ', 'МСКТ',])
VK = Entry.objects.filter(entryType__icontains='МРТ', 'МСКТ')
VK = Entry.objects.filter(entryType__icontains='МРТ', entryType__icontains='МСКТ')
  • 在第一种情况下为空QuerySet [],
  • 在第二种情况下 - 一个例外,
  • 在后一种情况下 - 一个例外:"duplicate keyword argument".

或像这样:

VK = Entry.objects.filter(entryType__icontains='МРТ') # результат соответствует запросу 
VK += Entry.objects.filter(entryType__icontains='МСКТ') # unsupported operand type(s) for +=: 'QuerySet' and 'QuerySet' 

推荐如何实现这个过滤条件?

python
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-07-09 11:26:15 +0000 UTC

像在 Django Admin 中一样从一个窗口拖放到另一个窗口

  • 0

有必要通过拖动元素或选择它们并使用按钮移动它们来实现将一组不同的元素从一个文本字段拖放到另一个文本字段的能力,就像在为用户分配权限时在 Django 管理面板中一样。

在此处输入图像描述

最初,任务是实现为在系统中注册的员工选择多个专业的可能性。

推荐,pliz,什么可以用于这样的解决方案 - 在 Django 管理面板中实现的选项,如果这些工具内置在 Django 中,作为适用的工具包,或者在其他工具的帮助下?

django
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-05-20 13:05:03 +0000 UTC

在Django中将参数从模板传递到视图时出错

  • 0

当我尝试使用来自另一个模板的链接在模板中显示来自数据库的记录时出现错误。

数据库中有一些记录需要编辑。

在此之前,数据库记录列表显示在模板中,每条记录都有一个用于编辑的链接。

将参数从模板传递到视图的过程很经典:

<a href="{% url 'entryview' entry.id %}"> {{entry}}</a>

网址.py:

urlpatterns = [url(r'^entryview/(?P<pk>\d+)/', app.views.entryview, name='entryview'),]

视图.py:

def entryview(request, pk):
    entry = Entry.objects.get(id = pk)

    return(request,'app/entryview.html',         
        {   'staff': request.user.staff, 'entry': entry, 'pk': pk,
            'year': datetime.now().year,        
        })

结果,我得到传递的元组不存在的属性错误。

在此处输入图像描述

这里有什么问题?

django
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-04-04 08:40:00 +0000 UTC

将用户绑定到另一个 Django 模型

  • 0

我正在尝试执行简单的操作,通过“ManyToMany”外键将授权用户包含在辅助模型的实例中。

模型:

from django.contrib.auth.models import User

class Entry(models.Model):
    author = models.ManyToManyField(User, verbose_name='Заявку оформил')

我从数据库条目创建现有用户的实例:

>>> u = User.objects.get(pk=2)
>>> u
<User: doctor>

现在我将此用户传递给 Entry 实例:

>>> entry = Entry(id=1, author=u)

我遇到了一个例外:

  Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "Z:\Django\DjangoWeb\env\lib\site-packages\django\db\models\base.py", line 568, in __init__
    _setattr(self, prop, kwargs[prop])
  File "Z:\Django\DjangoWeb\env\lib\site-packages\django\db\models\fields\related_descriptors.py", line 537, in __set__
    manager.set(value)
  File "Z:\Django\DjangoWeb\env\lib\site-packages\django\db\models\fields\related_descriptors.py", line 983, in set
    objs = tuple(objs)
TypeError: 'User' object is not iterable

我究竟做错了什么?

django
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-03-04 00:06:21 +0000 UTC

在 Django 中创建迁移时的对象序列化问题

  • 0

在创建数据库表-“makemigrations”的操作过程中,系统发出以下关于序列化问题的消息:

Идет выполнение: manage.py check
System check identified no issues (0 silenced).

Идет выполнение: manage.py makemigrations
Migrations for 'app':
  app\migrations\0001_initial.py

- Create model Destination   
- Create model Doctor        
- Create model Entry    
....
  полный список всех таблиц из models.py

Traceback (most recent call last):  
File "...\DjangoWeb\manage.py", line 17, in <module>        
execute_from_command_line(sys.argv)

File "...\DjangoWeb\env\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line        
utility.execute()

File "Z:\Documents\_Works\ГП16\Entries\Diagnostic-Entries-Django\DjangoWeb\env\lib\site-packages\django\core\management\__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)      

File "...\DjangoWeb\env\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)      

File "...\DjangoWeb\env\lib\site-packages\django\core\management\base.py", line 330, in execute
    output = self.handle(*args, **options)

File "Z:\Documents\_Works\ГП16\Entries\Diagnostic-Entries-Django\DjangoWeb\env\lib\site-packages\django\core\management\commands\makemigrations.py", line 193, in handle
    self.write_migration_files(changes)

File "...\DjangoWeb\env\lib\site-packages\django\core\management\commands\makemigrations.py", line 231, in write_migration_files
    migration_string = writer.as_string()

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\writer.py", line 163, in as_string
    operation_string, operation_imports = OperationWriter(operation).serialize()      

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\writer.py", line 120, in serialize
    _write(arg_name, arg_value)

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\writer.py", line 72, in _write
    arg_string, arg_imports = MigrationWriter.serialize(item)

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\writer.py", line 293, in serialize
    return serializer_factory(value).serialize()

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\serializer.py", line 44, in serialize
    item_string, item_imports = serializer_factory(item).serialize()

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\serializer.py", line 229, in serialize
    return self.serialize_deconstructed(path, args, kwargs)

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\serializer.py", line 101, in serialize_deconstructed
    arg_string, arg_imports = serializer_factory(arg).serialize()

File "...\DjangoWeb\env\lib\site-packages\django\db\migrations\serializer.py", line 396, in serializer_factory
    "topics/migrations/#migration-serializing" % (value, get_docs_version())

ValueError: Cannot serialize: <django.db.models.query_utils.    
DeferredAttribute object at 0x0000025CC6A0E940>

There are some values Django cannot serialize into migration files.    
For more, see 
https://docs.djangoproject.com/en/1.11/topics/migrations/#migration-serializing  
----------------------------------
Идет выполнение: manage.py migrate

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:      

Applying contenttypes.0001_initial... OK      
Applying auth.0001_initial... OK      
Applying admin.0001_initial... OK      
Applying admin.0002_logentry_remove_auto_add... OK      
Applying contenttypes.0002_remove_content_type_name... OK      
Applying auth.0002_alter_permission_name_max_length... OK      
Applying auth.0003_alter_user_email_max_length... OK      
Applying auth.0004_alter_user_username_opts... OK      
Applying auth.0005_alter_user_last_login_null... OK      
Applying auth.0006_require_contenttypes_0002... OK      
Applying auth.0007_alter_validators_add_error_messages... OK      
Applying auth.0008_alter_user_username_max_length... OK      
Applying sessions.0001_initial... OK

>>>

应用迁移没有抛出任何异常!但是,用户模型表实际上并未在数据库中创建。仅创建了与身份验证等相关的 jang 表。

告诉我为什么没有创建“makemigrations”时列出的模型表,这可能是什么原因?

模型.py

from django.db import models
# my import
from django.contrib.auth.models import User
from django.utils import timezone

# Модель Имён
class Name(models.Model):
    name = models.CharField(max_length=30, verbose_name="Имя") # для ФИО

# Модель Фамилий 
class Surname(models.Model):
    surname = models.CharField(max_length=30, verbose_name="Фамилия") # для ФИО

# Модель Отчеств
class Midname(models.Model):
    midname = models.CharField(max_length=30, verbose_name="Отчество") # для ФИО

# модель ФИО - абстрактная
class FIO(models.Model):
    surname = models.ManyToManyField(Surname, verbose_name="Фамилия") 
    name = models.ManyToManyField(Name, verbose_name="Имя")
    midname = models.ManyToManyField(Midname, verbose_name="Отчество", blank=True, default='')
    class Meta:
        abstract = True

# модель - "Врач"
class Doctor(FIO):
    docid = models.CharField(max_length=10, verbose_name='Код врача') # код врача
    department = models.CharField(max_length=15, verbose_name='Отделение') # отделение
    telm = models.CharField(max_length=12, blank=True, verbose_name='Моб. тел', default='') # мобильный
    telw = models.CharField(max_length=12, blank=True, verbose_name='Гор. тел.', default='') # городской
    tels = models.CharField(max_length=3, blank=True, verbose_name='Внутр. тел', default='') # внутренний

    def __str__(self):
        # Строка для представления объекта модели. String for representing the Model object.
        return 'Врач: {0} {1} {2}, код: {3}, тел-ны: раб. {4}, внутр. {5}, моб. {6}'.format(self.surname, self.name, self.midname, self.docid, self.telw, self.tels, self.telm) 

# модель - "подрядное ЛПУ или диагностический центр"
class Med_agency(models.Model):
    name = models.CharField(max_length=100, blank=True)
    address = models.CharField(max_length=100, blank=True)

# модель - класс "Тип заявки"  ???
class EntryType(models.Model):
    type = models.CharField(max_length=50,  verbose_name="Тип диагностики")
    shortType = models.CharField(max_length=3, verbose_name="Тип (сокращённо)")

# модель - "Тип специализации по нозологиям"
class Nozology(models.Model):
    nozology = models.CharField(max_length=50, help_text = "Нозологии") 
    def __str__(self): # Строка для представления объекта модели
        return "{0}".format(self.nozology)

# модель - "тип назначения (диагностика, консультация)"
class Destination(models.Model):
    destination = models.CharField(max_length=50,  verbose_name="Назначения")

# модель - "Локализации МРТ, МСКТ"
class Localisation(models.Model):
    localType = models.CharField(max_length=10,  verbose_name="Технология ", default='', blank=True)
    localisation = models.CharField(max_length=50,  verbose_name="Локализация", default='', blank=True)
    def __str__(self):
        return "Локализация: {0}, {1}".format(localType, localisation)

class UserProfile(models.Model): # Пользователь системы
    user = models.OneToOneField('auth.User', verbose_name="Пользователь", on_delete=models.CASCADE)
    isActive = models.BooleanField(verbose_name="Активен?", default=False) # отметка о активности 

# модель - "Заявка"
class Entry(FIO):
    author = models.ManyToManyField('auth.User', verbose_name='Заявку оформил') # Автор заполнения - инициализируется автоматически по входу в систему 
    dateReg = models.DateField('Дата регистрации', default=timezone.now, ) # дата регистрации 
    entryNumber = models.CharField(max_length=10, verbose_name='Номер заявки')
    entryType = models.CharField(max_length=20, verbose_name='Тип заявки')        
    patient_dateBurn = models.DateField('Дата рождения')
    patient_weight = models.PositiveSmallIntegerField(verbose_name="Вес", blank=True, null=True) # вес 
    patient_card = models.CharField(max_length=9, verbose_name="№ мед. карты", blank=True, default='') # номер мед. карты
    patient_tel = models.CharField(max_length=12, verbose_name="Телефон", blank=True, default='') # любой телефон

    doctor = models.ForeignKey(Doctor, verbose_name='Врач' ) # врач , on_delete=models.PROTECT , on_delete=models.SET_DEFAULT, default='Не активен'
    docid = models.CharField(max_length=10, verbose_name='Код врача', default = Doctor.docid) # код врача

    diagnose = models.TextField('Диагноз', default='') # диагноз
    diagnoseMKB = models.CharField('Диагноз МКБ', max_length=10, default='') # диагноз МКБ
    diagnoseDate = models.DateTimeField('Дата установки диагноза', default='') # дата установки диагноза
    comment = models.TextField('Комметарий', default='', blank=True) # комментарий о пациенте, заявке, прохождении и т.д.

    dateReserch = models.DateField(verbose_name='Назначенная дата', default='') # дата диагностики
    timeReserch = models.TimeField(verbose_name='Назначенное время', default='') # время диагностики 
    orderNumber = models.CharField('№ наряда', max_length=10, default='') # номер наряда
    readyMark = models.BooleanField(default=False, verbose_name="Пройдено") # отметка о прохождении СТАТУС заявки
    remindDate = models.DateField('Позвонить пациенту', default='', blank=True) # дата напоминания

    destination = models.CharField('Назначение', max_length=25)
    nozology = models.CharField('Нозология', max_length=25)

    localisation = models.ManyToManyField(Localisation, verbose_name='Локализация', default='', blank=True) # локализации МРТ и МСКТ    
    med_agency = models.ForeignKey(Med_agency, verbose_name='Мед. учреждение') # ЛПУ или диагностический Центр 

    class Meta:
        verbose_name = "Заявка"
        verbose_name_plural = "Заявки"
        # ordering = [Doctor.surname, str(Doctor.name)[0], str(Doctor.midname)[0]]
        ordering = ['-dateReg']        

    def __str__(self):
        return "Заявка №{0}, {1}, {11}, Врач: {2} {3}{4} код: {5}, пациент: {6} {7}{8}, адрес: {9}, тел: {10}".format(str(self.id + self.entryType.shortType), self.dateReg, 
                self.doctor.surname, str(self.doctor.name)[0], str(self.doctor.midname)[0], self.doctor.docid, self.patient.surname, str(self.patient.name)[0], 
                str(self.patient.midname)[0], self.patient.address, self.tel, self.entryType.type) 

# модель - "Пациент"
class Patient(models.Model):
    surname = Entry.surname #models.CharField(max_length=50,  verbose_name='Фамилия')
    name = Entry.name # models.CharField(max_length=50, verbose_name='Имя')  # ФИО
    midname = Entry.midname # models.CharField(max_length=50, default='', blank=True, verbose_name='Отчество')

    dateBurn = models.DateField('Дата рождения') # 
    weight = models.PositiveSmallIntegerField(verbose_name="Вес", blank=True, null=True) # вес 
    medpolice = models.CharField(max_length=100, verbose_name="№ мед. полиса", blank=True, default='') # полис ОМС
    card = models.CharField(max_length=9, verbose_name="№ мед. карты", blank=True, default='') # номер мед. карты
    address = models.CharField(max_length=100, verbose_name="Адрес проживания", blank=True, default='') # адрес
    tel = models.CharField(max_length=12, verbose_name="Телефон", blank=True, default='') # любой телефон

    def __str__(self): # Строка для представления объекта модели
        return 'Пациент: {0} {1} {2}, полис МС: {3}, мед.карта: {4}, адрес: {5}, тел: {6}'.format(self.surname, 
                self.name, self.midname, self.medpolice, self.card, self.address, self.tel1)

class logger (models.Model):
    pass
база-данных
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-03-03 20:25:51 +0000 UTC

makemigrations 未运行且未在 Django DB 中创建表

  • 1

在 Visual Studio 2017 中进行开发。在执行“makemigrations”以及检查“manage.py check”时,我有相同的系统响应:


运行:manage.py makemigrations

Traceback (most recent call last):
File "...\DjangoWeb\env\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)

File "...\DjangoWeb\env\lib\site-packages\django\db\backends\sqlite3\base.py", line 328, in execute

return Database.Cursor.execute(self, query, params)
sqlite3.OperationalError: no such table: app_entry

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "...\DjangoWeb\manage.py", line 17, in <module>

execute_from_command_line(sys.argv)

File "...\DjangoWeb\env\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()

File "...\DjangoWeb\env\lib\site-packages\django\core\management\__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)

File "...\DjangoWeb\env\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)

File "...\DjangoWeb\env\lib\site-packages\django\core\management\base.py", line 327, in execute
    self.check()

File "...\DjangoWeb\env\lib\site-packages\django\core\management\base.py", line 359, in check
    include_deployment_checks=include_deployment_checks,

File "...\DjangoWeb\env\lib\site-packages\django\core\management\base.py", line 346, in _run_checks
    return checks.run_checks(**kwargs)

File "...\DjangoWeb\env\lib\site-packages\django\core\checks\registry.py", line 81, in run_checks
    new_errors = check(app_configs=app_configs)

File "...\DjangoWeb\env\lib\site-packages\django\core\checks\urls.py", line 16, in check_url_config
    return check_resolver(resolver)

File "...\DjangoWeb\env\lib\site-packages\django\core\checks\urls.py", line 26, in check_resolver
    return check_method()

File "...\DjangoWeb\env\lib\site-packages\django\urls\resolvers.py", line 256, in check
    for pattern in self.url_patterns:

File "...\DjangoWeb\env\lib\site-packages\django\utils\functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)

File "...\DjangoWeb\env\lib\site-packages\django\urls\resolvers.py", line 407, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)

File "...\DjangoWeb\env\lib\site-packages\django\utils\functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)

File "...\DjangoWeb\env\lib\site-packages\django\urls\resolvers.py", line 400, in urlconf_module
    return import_module(self.urlconf_name)

File "...\Microsoft Visual Studio\Shared\Python36_64\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)

File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File ".\DjangoWeb\urls.py", line 8, in <module>
    import app.views

File ".\app\views.py", line 68, in <module>
    ENTRY_COUNT = Entry.objects.count() # кол-во зявок в БД

File "...\DjangoWeb\env\lib\site-packages\django\db\models\manager.py", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)

File "...\DjangoWeb\env\lib\site-packages\django\db\models\query.py", line 364, in count
    return self.query.get_count(using=self.db)

File "...\DjangoWeb\env\lib\site-packages\django\db\models\sql\query.py", line 499, in get_count
    number = obj.get_aggregation(using, ['__count'])['__count']

File "...\DjangoWeb\env\lib\site-packages\django\db\models\sql\query.py", line 480, in get_aggregation
    result = compiler.execute_sql(SINGLE)

File "...\DjangoWeb\env\lib\site-packages\django\db\models\sql\compiler.py", line 899, in execute_sql
    raise original_exception

File "...\DjangoWeb\env\lib\site-packages\django\db\models\sql\compiler.py", line 889, in execute_sql
    cursor.execute(sql, params)

File "...\DjangoWeb\env\lib\site-packages\django\db\backends\utils.py", line 79, in execute
    return super(CursorDebugWrapper, self).execute(sql, params)

File "...\DjangoWeb\env\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)

File "...\DjangoWeb\env\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)

File ...\DjangoWeb\env\lib\site-packages\django\utils\six.py", line 685, in reraise
    raise value.with_traceback(tb)

File "...\DjangoWeb\env\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)

File "...\DjangoWeb\env\lib\site-packages\django\db\backends\sqlite3\base.py", line 328, in execute
    return Database.Cursor.execute(self, query, params)
django.db.utils.OperationalError: no such table: app_entry

同时,“migration”项目文件夹中的所有migration文件都被删除,除了“--init--.py”文件,数据库文件本身被系统删除并重新创建,但不断给出上述错误..

这里可能有什么问题以及如何解决?

база-данных
  • 1 个回答
  • 10 Views
Martin Hope
JBlack
Asked: 2020-12-11 12:54:22 +0000 UTC

Python Django 开发环境功能(Windows、Linux、Linux 服务器)[关闭]

  • 0
关闭。这个问题不可能给出客观的答案。目前不接受回复。

你想改进这个问题吗? 重新构建问题,以便可以根据事实和引用来回答。

1 年前关闭。

改进问题

既然在 linux-server 上托管一个用 Python Django 编写的 web 应用更有利可图,那么在什么环境配置下开发更方便呢?环境选项: 1. Windows、Visual Studio、Python Django 2. Linux、PyCharme IDE、Python Django(或 sublime 等) 3. Linux-Server(一台用于开发并托管在其上的 PC)、PyCharme IDE、Python Django(或崇高等)

每个选项中可能会出现 Web 项目的哪些困难或其他设置/功能?

python
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5