小编aar*_*ron的帖子

pickle.load - EOFError:输入输出

我有一个.obj文件,之前,我将图像转换为base64并保存pickle.

问题是当我尝试加载.obj文件时pickle,将代码从base64转换为图像,并加载它pygame.

加载图像的功能:

def mainDisplay_load(self):
    main_folder = path.dirname(__file__)
    img_main_folder = path.join(main_folder, "sd_graphics")

    # loadImg
    self.mainTerminal = pg.image.load(path.join(img_main_folder, self.main_uncode("tr.obj"))).convert_alpha()
Run Code Online (Sandbox Code Playgroud)

解码文件的函数:

def main_uncode(self, object):
    openFile = open(object, "rb")
    str = pickle.load(openFile)
    openFile.close()
    fileData = base64.b64decode(str)
    return fileData
Run Code Online (Sandbox Code Playgroud)

运行代码时出现的错误:

str = pickle.load(openFile)
Run Code Online (Sandbox Code Playgroud)

EOFError:退出输入

我该如何解决?

  • Python版本:3.6.2
  • Pygame版本:1.9.3

更新1

这是我用来创建.obj文件的代码:

import base64, pickle

with open("terminal.png", "rb") as imageFile:
    str = base64.b64encode(imageFile.read())
    print(str)

file_pi = open("tr.obj","wb")
pickle.dump(str,file_pi)
file_pi.close()

file_pi2 = open("tr.obj","rb")
str2 = pickle.load(file_pi2) …
Run Code Online (Sandbox Code Playgroud)

python base64 pygame pickle python-3.x

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

如何将Swagger设置为默认开始页面?

如何将Swagger设置为ABP模板中的默认起始页而不是/Account/Login

我正在使用ASP.NET MVC 5.x + Angular 1.x.

更新

当前代码:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    //ASP.NET Web API Route Config
    routes.MapHttpRoute(
        name: "swagger_root",
        routeTemplate: "",
        defaults: null,
        constraints: null,
        handler: new RedirectHandler((message => message.RequestUri.ToString()), "swagger"));

    routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );
}
Run Code Online (Sandbox Code Playgroud)

一切都工作正常,除了模块零的"api/Account/Authenticate"请求已经破坏,显示:

无法找到该资源.

c# angularjs asp.net-mvc-5 swagger-ui aspnetboilerplate

7
推荐指数
7
解决办法
4992
查看次数

出现任何未处理的错误时,将显示带有乱码文本的页面

每当发生未处理的错误时,我都会看到屏幕而不是黄色屏幕.

suckr

请注意我已在ASP.NET Boilerplate中启用了本地化,并且当前语言/文化设置为en-US.

对于某些页面,语言文本值存储在AbpLanguageTexts表中.

asp.net error-handling asp.net-mvc-5 aspnetboilerplate

6
推荐指数
1
解决办法
131
查看次数

如何在 ASP.NET Core MVC 中设置会话超时/到期时间?

我正在使用 ASP.NET Core 的 ASP.NET Zero 版本 7、MVC 和 jQuery 项目。

我正在尝试设置会话超时/到期时间,以便在应用程序空闲一段时间后自动从应用程序注销。有人可以告诉我该怎么做吗?

在 ASP.NET Zero 版本 8 中,他们在用户管理设置中提供此配置。

session-timeout session-cookies asp.net-core-mvc asp.net-core aspnetboilerplate

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

FosElasticaBundle:一个索引中包含多种类型

我需要建立一个多实体搜索。

我不想每个T1,然后每个T2。

使用时fos:lastica:populate,出现错误:

拒绝将映射更新更新为[search_dev],因为最终映射将具有1种以上的类型:[t1,t2]

我的映射:

fos_elastica:
   clients:
       default:
           host: %elastic_host%
           port: %elastic_port%
   indexes:
       search:
           finder: ~
           client: default
           index_name: search_%kernel.environment%
           types:
               t1:
                   indexable_callback: 'getEnabled'
                   properties:
                       id:
                          type: integer
                       name: ~
                   persistence:
                       driver: orm
                       model: AppBundle\Entity\T1
                       finder: ~
                       listener:
                          logger: true
                       elastica_to_model_transformer:
                          ignore_missing: true
               t2:
                   indexable_callback: 'getEnabled'
                   properties:
                       id:
                          type: integer
                       name: ~
                   persistence:
                       driver: orm
                       model: AppBundle\Entity\T2
                       finder: ~
                       listener:
                          logger: true
                       elastica_to_model_transformer:
                          ignore_missing: true
Run Code Online (Sandbox Code Playgroud)

我的服务:

$search = $this->indexManager->getIndex('search')->createSearch();
$search->addType('t1');
$search->addType('t2');
$resultSet = $search->search($query);

$results = $this->modelTransformer->transform($resultSet->getResults());
Run Code Online (Sandbox Code Playgroud)

我错过了什么?我可以在1个索引中映射2种类型吗?

php symfony foselasticabundle

5
推荐指数
1
解决办法
1252
查看次数

如何在 ASP.NET Boilerplate Core 2.0 模板中使用 Npgsql?

我花了很多时间尝试将 PostgreSQL 与 ASP.NET Boilerplate Core 2.x + Module Zero(看起来很棒!)一起使用。

  1. 我将Npgsql.EntityFrameworkCore.PostgreSQL&Npgsql.EntityFrameworkCore.PostgreSQL.Design依赖添加到myApp.EntityFrameworkCore.

  2. 我还更改了连接字符串,我使用builder.UseNpgsql而不是builder.UseSqlServerin myappDbContextConfigurer.cs

作为一个新项目,我从Npgsql v2.0.0. 但是经过几个问题,我发现这个版本有一些问题。所以我回到了1.1.1发布。

我很确定这部分工作正常。下一步是删除所有现有迁移并重新加载它们:

  • Add-Migration "Initial_Migrations"
  • Add-Migration "AbpZero_Initial"

当我做第一个时,我收到一个错误:

来自程序集“Npgsql.EntityFrameworkCore.PostgreSQL, Version=1.1.1.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7”的“Microsoft.EntityFrameworkCore.Infrastructure.Internal.NpgsqlOptionsExtension”类型中的方法“Clone”没有实现。

我在这里找到了解决方案的开始(第 6 篇文章):https : //forum.aspnetboilerplate.com/viewtopic.php?t=5304&p=13013

帖子似乎有点过时,我不知道在哪里实施NpgsqlMigrationSqlGenerator(我的意思是,在哪个项目中)。

感谢您阅读这篇文章,任何帮助将不胜感激。

migration postgresql npgsql aspnetboilerplate asp.net-core-2.0

5
推荐指数
1
解决办法
2111
查看次数

在辅助线程上运行任何 Web 服务器事件循环

我们拥有丰富的后端应用程序,可以处理消息传递/排队、数据库查询和计算机视觉。我们需要的另一个功能是 TCP 通信 - 最好通过 http。重点是:这主要不是一个 Web 应用程序。我们希望为不同的目的设置一组 http 通道。是的 - 我们了解消息传递,包括主题和发布-订阅:但基于直接 TCP 的请求/响应也有其一席之地。

我已经查看并尝试了六个 python http web 服务器。它们隐式或显式地描述了在主event loop线程上运行的要求。这对我们来说是本末倒置:线程已经被其他任务占用,包括协调其他活动。main

为了说明预期的结构,我将从我的aiohttp特定问题How to run an aiohttp Web application in a secondary thread 中提取代码。在这个问题中,我尝试在另一个独立脚本中运行,但在一个从属线程上:

def runWebapp():
  from aiohttp import web

  async def handle(request):
      name = request.match_info.get('name', "Anonymous")
      text = "Hello, " + name
      return web.Response(text=text)

  app = web.Application()
  app.add_routes([web.get('/', handle),
                  web.get('/{name}', handle)])
  web.run_app(app)

if __name__ == '__main__':
  from threading import Thread
  t …
Run Code Online (Sandbox Code Playgroud)

python multithreading embeddedwebserver

5
推荐指数
1
解决办法
835
查看次数

如果我只想使用标准用户模型,如何使用 AUTH_USER_MODEL

我看过几篇文章并阅读了有关如何在 settings.py 中进行设置的最佳实践的文档AUTH_USER_MODEL,但没有看到任何有关如何执行此操作的实际示例。我尝试了几种配置,但不断收到此错误:

django.core.exceptions.ImproperlyConfigured:AUTH_USER_MODEL 指的是尚未安装的模型“auth.User”

它甚至没有告诉我错误发生在哪里。以下是我尝试过的方法:

方法一:

from django.contrib.auth import get_user_model
User = get_user_model()
Run Code Online (Sandbox Code Playgroud)

然后我会像这样引用我的用户:

class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
Run Code Online (Sandbox Code Playgroud)

方法二:

from django.contrib.auth.models import User
Run Code Online (Sandbox Code Playgroud)

两者都不起作用,而且我不确定如果我只想使用标准用户模型,AUTH_USER_MODEL我将如何在 settings.py 中设置。我根本没有自定义 User 对象。我假设类似,但我不确定。AUTH_USER_MODEL = 'django.contrib.auth.models.User'

现在我得到了这个:

AttributeError:“str”对象没有属性“_meta”

用户/表单.py

from django import forms
from django.conf import settings
from django.contrib.auth.forms import UserCreationForm
from .models import Profile


class UserRegisterForm(UserCreationForm):
    email = forms.EmailField()

    class Meta:
        model = settings.AUTH_USER_MODEL
        fields = ['username', 'email', 'password1', 'password2']


class UserUpdateForm(forms.ModelForm):
    email = forms.EmailField() …
Run Code Online (Sandbox Code Playgroud)

python django django-settings django-auth-models

5
推荐指数
1
解决办法
8577
查看次数

找不到模块:错误:角度更新到 13 后,未从包中导出包路径 ./locales

TypeScript 2.4 添加了对动态 import() 表达式的支持,这允许我们按需异步加载和执行 ECMAScript 模块。

尝试动态导入本地化但面临导出问题

Module not found: Error: Package path ./locales is not exported from package ....\node_modules\@angular\common (see exports field in .....\node_modules\@angular\common\package.json)
Run Code Online (Sandbox Code Playgroud)

我有下面的代码

let angularLocale = convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name);
      import(`@angular/common/locales/${angularLocale}.js`)
                .then(module => {
                    registerLocaleData(module.default);
                    NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales().then(_ => {
                        resolve(true);
                        abp.ui.clearBusy();
                    });
                }, reject);
Run Code Online (Sandbox Code Playgroud)

非常不确定如何导出它,它在 Angular 12 上运行良好。

javascript typescript aspnetboilerplate angular angular13

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

如何使用 django-cacheops 使视图缓存失效

我有一个视图,并使用 django-cacheops (https://github.com/Suor/django-cacheops)将其缓存在views.py中:

@cached_view(timeout=60*15)
@csrf_exempt
def order(request, usr):
    ...
Run Code Online (Sandbox Code Playgroud)

urls.py 中订单视图的正则表达式:

url(r'^order/(?P<usr>\D+)$', views.order, name='ord')
# Example Url: http://127.0.0.1:8000/order/demo (demo is the user name)
Run Code Online (Sandbox Code Playgroud)

order我想使以下视图中的缓存视图无效:

@login_required 
def available(request, pk, avail):
    pk = int(pk)
    avail = strtobool(avail)
    if avail:
        Product.objects.filter(id = pk).update(available = True)
    else:
        Product.objects.filter(id = pk).update(available = False)
    return HttpResponseRedirect(reverse_lazy('yc')) 
Run Code Online (Sandbox Code Playgroud)

根据文档,我们可以通过执行以下操作来实现这一目标:

@login_required 
def available(request, pk, avail):
    pk = int(pk)
    avail = strtobool(avail)
    if avail:
        Product.objects.filter(id = pk).update(available = True)
        order.invalidate("http://127.0.0.1:8000/order/demo", "demo")
        #it's a dummy url I've handled …
Run Code Online (Sandbox Code Playgroud)

python django caching django-views

5
推荐指数
1
解决办法
1006
查看次数