小编Gwy*_*idD的帖子

使用外部python插件运行asyncio循环引擎

我安装了以emperor模式运行的uWSGI.Vassals使用不同的python版本,因此我不能在uWSGI二进制文件中嵌入python插件.

有了这个,我想在其中一个封锁中使用asyncio循环引擎,但我无法弄清楚如何运行非嵌入的asyncio插件和greenlet插件.

到目前为止我尝试过的:

  • 将asyncio和greenlet嵌入到uWSGI中,使用:

    CFLAGS="-I/usr/local/include/python3.4" make PYTHON=python3.4 asyncio
    
    Run Code Online (Sandbox Code Playgroud)

    建立uWSGI.但这也将嵌入python插件,我不想要它.

  • 使用以下方法构建asyncio和uwsgi作为外部插件:

    PYTHON=python3.4 ./uwsgi --build-plugin "plugins/greenlet greenlet"
    PYTHON=python3.4 ./uwsgi --build-plugin "plugins/greenlet greenlet"
    
    Run Code Online (Sandbox Code Playgroud)

    构建插件,但插件无法加载:

    /usr/local/lib/uwsgi/asyncio_plugin.so:unfined defined symbol:up
    /usr/local/lib/uwsgi/greenlet_plugin.so:undefined symbol:up

    在日志中.

    //编辑

    我已经发现必须在设置中的asyncio和greenlet之前启用python插件,因此错误不再发生,但greenlet不起作用,当前greenlet中没有父级.

我还能尝试做些什么?我敢打赌,在python3.4插件中嵌入asyncio和greenlet会起作用,但我不知道该怎么做或者甚至可能.

目前我正在使用内置所需插件的第二个皇帝,但由于平台的限制,我不能再使用该解决方案了.

uwsgi python-3.x greenlets python-asyncio

18
推荐指数
1
解决办法
808
查看次数

如何使用父项中的字段获取所有子元素的列表

我有一个dicts列表,其中包含一个字段中的另一个列表.我想"扁平化"该列表,因此它为每个子元素提供了一个字段(或一些字段)从父项复制到其中.例:

来源数据:

[
    {
        "name": "A",
        "foo": "x",
        "bar": 1,
        "subelements": [
            {
                "baz": "xyz",
                "foobar": "abc"
            },
            {
                "baz": "zzz",
                "foobar": "def"
            }
        ]
    },
    {
        "name": "B",
        "foo": "Y",
        "bar": 4,
        "subelements": [
            {
                "baz": "yyy",
                "foobar": "aaa"
            },
            {
                "baz": "xxx",
                "foobar": "bbb"
            },
            {
                "baz": "www",
                "foobar": "bbb"
            }
        ]
    }
]
Run Code Online (Sandbox Code Playgroud)

预期结果:

[
    {
        "baz": "xyz",
        "foobar": "abc",
        "foo": "x"
    },
    {
        "baz": "zzz",
        "foobar": "def",
        "foo": "x"
    },
    {
        "baz": "yyy",
        "foobar": "aaa",
        "foo": …
Run Code Online (Sandbox Code Playgroud)

jmespath

10
推荐指数
1
解决办法
248
查看次数

QTreeView删除所有项目的装饰/展开按钮

我希望我的QTreeView所有项目都能得到扩展.在这种情况下,所有展开按钮/装饰都是不必要的,我想摆脱它们.如何删除所有这些?setRootIsDecorated只会删除第一级的按钮...

qt qtreeview

8
推荐指数
2
解决办法
4484
查看次数

更改SSH主机以进行克隆

有没有办法更改gitlab的默认ssh主机(显示在Web界面的存储库视图顶部)?我的意思是仅用于克隆网址中的SSH.

例如,我安装了gitlab git.example.com,但example.com也指向同一台机器(不同的站点).我可以从以下位置更改ssh clone urls:

git clone git@git.example.com:user/repository
Run Code Online (Sandbox Code Playgroud)

至:

git clone git@example.com:user/repositiory
Run Code Online (Sandbox Code Playgroud)

但对于http和https留下它git.example.com

gitlab

8
推荐指数
1
解决办法
3589
查看次数

Django:AbstractBaseUser和Error ='AttributeError:无法设置属性'

我是django的新手.我写我的django用户模型和用户管理器如下:

的UserManager:

class UserManager(BaseUserManager):
    def create_user(self, username, tel_number, password=None):
        """
        Creates and saves a User with the given email and password.
        """
        if not username:
            raise ValueError('Users must have an email address')

        user = self.model(
            username=self.normalize_email(username),
        )

        user.set_password(password)
        user.save(using=self._db)
        return user

    def create_superuser(self, username, tel_number, password):
        """
         Creates and saves a superuser with the given email and password.
        """
        user = self.create_user(username, tel_number=tel_number,
                                password=password
                                )
        user.is_admin = True
        user.save(using=self._db)
        return user
Run Code Online (Sandbox Code Playgroud)

我的UserModel是:

class Users(AbstractBaseUser, PermissionsMixin):
    object = UserManager() …
Run Code Online (Sandbox Code Playgroud)

python django

3
推荐指数
1
解决办法
1251
查看次数

Django休息框架 - 如何进行不区分大小写的视图集搜索

如何在rest框架的视图集中启用不区分大小写的搜索?

例如,假设Post模型有标签.下面的所有链接应该找到相同的标记内容,现在它们区分大小写并尝试搜索不同的值:

  1. /文章/标签= ABCDEF
  2. /文章/标签= ABCDEF
  3. /文章/标签= ABCDEF

views.py

class PostViewSet(viewsets.ReadOnlyModelViewSet):
    queryset = Post.objects.all()
    serializer_class = PostSerializer
Run Code Online (Sandbox Code Playgroud)

python django django-rest-framework

2
推荐指数
2
解决办法
2071
查看次数

Django用户的DetailVew影响经过身份验证的用户

我试图使用DetailView显示有关用户(配置文件页面)的信息。它可以工作,但是当我出于某种原因打开User的DetailView时,Django认为我已通过此用户身份验证。例如,如果我注销,请打开一些用户的DetailView,Django开始认为我是以该用户身份登录的。我可以看到问题,因为base.html显示了当前登录的用户,如果用户未通过身份验证,则会进行更改。任何想法有什么问题吗?谢谢!

views.py

class ProfileView(DetailView):
    model = User
    template_name = 'users/profile.html'
Run Code Online (Sandbox Code Playgroud)

urls.py

urlpatterns = [
    path('profile/<int:pk>/<str:username>', ProfileView.as_view(), name='profile'),
]
Run Code Online (Sandbox Code Playgroud)

profile.html

{% extends 'base.html' %}
{% block content %}
    <article class = 'media content-section'>
    <div class="media">
        <img class="avatar-image rounded-circle" src="{{ user.profile.image.url }}">
        </div>
    <div class = 'media-body'>
        <div class='article-metadata'>
            <h3>??????? {{user.username}}</h3>
        </div>
        <div class="article-content">
            <p>{{user.first_name}}</p>
            <p>{{user.email}}</p>
            <p>{{user.profile.birthdate}}</p>
            <p>{{user.date_joined}}</p>
        </div>
    </div>
    </article>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

base.html

<div class="navbar-nav">
    {% if user.is_authenticated %}
    <div class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" …
Run Code Online (Sandbox Code Playgroud)

django detailview

2
推荐指数
1
解决办法
53
查看次数

重定向vs反向Django

我已经get_absolute_url在模型中使用过反向内部方法,但是我希望我对反向和重定向之间的区别有所了解,我曾尝试在Google上进行搜索,但是几乎没有什么我不知道该怎么写说服堆栈溢出,我没有其他描述

django django-templates django-models django-views

1
推荐指数
2
解决办法
802
查看次数