小编blu*_*isk的帖子

在适用于Linux的Windows子系统上安装Apache

刚刚更新到最新的Windows 10版本(build 14316),我立即开始使用WSL,Windows子系统Linux,它应该在Windows上运行Ubuntu安装.

也许我正在尝试在其上安装Apache,但是有人请解释我为什么这是不可能的.

无论如何,在安装过程中(sudo apt-get install apache2),我在下载并正确安装依赖项后收到以下错误消息:

initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: No such file or directory
runlevel:/var/run/utmp: No such file or directory
 * Starting web server apache2                                                 *
 * The apache2 configtest failed.
Output of config test was:
mktemp: failed to create directory via template '/var/lock/apache2.XXXXXXXXXX': No such file or directory
chmod: missing operand after '755'
Try 'chmod --help' for more information.
invoke-rc.d: initscript apache2, action "start" failed.
Setting up ssl-cert …
Run Code Online (Sandbox Code Playgroud)

linux windows apache2 subsystem windows-subsystem-for-linux

26
推荐指数
3
解决办法
4万
查看次数

在 VS Code 中以 ANSI 编码保存文件

我有一个需要处于 ANSI 模式的文本文件。它仅指定:ANSI。Notepad++ 有一个转换为 ANSI 的选项,这可以解决问题。

\n\n

在 VS Code 中我没有找到这个编码选项。所以我读了一下它,看起来 ANSI 并不真正存在,实际上应该被称为 Windows-1252。

\n\n

但是,Notepad++ 的 ANSI 编码和 VS Code 的 Windows-1252 之间存在差异。它为字符选择不同的代码点,例如带重音的大写 e (\xc3\x89),从文档中可以明显看出。

\n\n

然而,当我让 VS Code 猜测由 Notepad++ 转换为 ANSI 的文档的编码时,它仍然猜测 Windows-1252。

\n\n

所以问题是:

\n\n
    \n
  • 有没有类似纯ANSI的东西?
  • \n
  • VS Code 如何转换成它?
  • \n
\n

encoding visual-studio-code

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

Python:检查文件夹中是否有多个文件的最快方法

我正在寻找一种非常快速的方法来检查文件夹是否包含两个以上的文件。

我担心如果/path/len(os.listdir('/path/')) > 2中有很多文件,可能会变得非常慢,特别是因为该函数一次会被多个进程频繁调用。

python

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

Symfony:在Doctrine实体方法中使用返回类型提示的表单问题

今天我非常勤奋,并决定返回类型提示我所有的symfony实体方法.所以:

<?php

Class User {
    private string $username;
    public method getUsername(): string {}
}
Run Code Online (Sandbox Code Playgroud)

一切都很好,直到我创建一个表单来创建一个新用户:

$user = new User();
$this->createForm(SignupType::class, $user);
Run Code Online (Sandbox Code Playgroud)

显示表单时,Symfony会自动获取此新实例的属性User $user.但由于它是一个新的实例化,它的username属性当然仍然是null,这是一个不正确的返回类型,因为它需要string.

我应该:

  1. 在Symfony实体中没有返回类型的暗示(meh);
  2. 设置$username = ''(但是帽子有点违背了不允许空白的目的,我可以看到各种各样的错误演变); 要么
  3. 取消映射symfony表单上的字段
  4. 其他可能的方案...

php return-type symfony doctrine-orm php-7

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

Python:同步程序中的Websocket

我有一个 bog 标准同步 python 程序,需要能够从 websockets 读取数据并使用数据更新 GUI。然而,asyncio 的蠕动总是让我绊倒。

我如何制作一个模块:

  1. 接受多个来源的多个订阅
  2. 每当有数据时就向请求者发送更新
  3. 每个 URL 只打开一个 websocket 连接
  4. 如果 websocket 关闭则重置它

这是我已经拥有的,但它在很多方面都失败了:

  1. run_forever()意味着循环在订阅完成之前被卡住,然后handle()卡在 falseywhile循环中
  2. 它似乎不想在套接字关闭时重新启动套接字,因为 websockets 对象没有属性connected(没有 s 的 websocket 有,但我不清楚其中的差异,也无法在网上找到信息)
  3. 我绝对不确定我的方法是否正确。

已经为此奋斗了几个星期。希望得到一些指点。

class WSClient():
    subscriptions = set()
    connections = {}
    started = False

    def __init__(self):
        self.loop = asyncio.get_event_loop()

    def start(self):
        self.started = True
        self.loop.run_until_complete(self.handle())
        self.loop.run_until_forever()  # problematic, because it does not allow new subscribe() events

    async def handle(self):
        while len(self.connections) > 0:
            # …
Run Code Online (Sandbox Code Playgroud)

python websocket python-asyncio

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

Perl重载@ {},以便您可以向foreach()提供对象

有没有一种方法可以使类重载数组取消引用程序,从而可以为该类提供实例,foreach并在每次迭代时运行自定义函数?

我试过了:

  • 重载@{}并将其分配给子。但是,在这种情况下,子仅执行一次,并且应该返回对要迭代的数组的引用。几乎但不是我想要的。

  • 重载<>。每次读取尝试都会执行分配的功能。确实是我想要的方式,但是它可以与while循环一起使用,而不能与一起使用foreach

重载

use overloaded;

$class = overloaded->new();

$class->add("Hi");
$class->add("Hello");
$class->add("Yeet");

foreach $string (@$class) {
    print("NEXT ITEM: ".$string."\n");
}

while ($item = <$class>) {
    print("NEXT ITEM: ".$item."\n");
}
Run Code Online (Sandbox Code Playgroud)

超载

package overloaded;

use strict;
use warnings;
use Data::Dumper;
use overload '@{}' => \&next, '<>' => \&fetchNext;

sub new {
    my ($class, %args) = @_;
    $args{fields} = ();
    $args{pos} = 0;
    return bless { %args }, $class;
}

sub add …
Run Code Online (Sandbox Code Playgroud)

perl operator-overloading

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

切换组件时,Angular 中的 Openlayers 地图为空白

我有一个加载 OpenLayers 地图的 MapComponent。该组件在我的 Angular 应用程序的各个页面中重复使用。

地图第一次加载正常。但是,当我导航到包含该地图的另一个组件时,地图变为空白。为了再次看到它,我必须导航到不包含地图的组件,然后导航回所需的页面。

我只在升级到 Angular 10(从 8)后才观察到这种行为。

Openlayers 6.5 和 5.3 版本都存在此问题。

尝试解决:

  1. 我尝试过强制设置this.map = null页面的 OnDestroy 生命周期挂钩。听起来不像是一个好的解决方案并且不起作用

  2. 我尝试在 AfterContentInit 中抛出错误:

ngAfterContentInit() {
   throw new Error("gramschaap");
}
Run Code Online (Sandbox Code Playgroud)

它对页面的渲染有点混乱,当然会留下一个很大的错误,但可以工作

  1. 我尝试设置一个超时来删除并重新设置地图的目标ngAfterViewInit
ngAfterViewInit() {
    this.initMap();
    setTimeout(() => {
      if (this.map) {
        this.map.setTarget(null);
        this.map.setTarget("mapTarget");
      }
    }, 1000);
}
Run Code Online (Sandbox Code Playgroud)

这当然意味着地图在重新绘制之前有一秒钟的空白;但它有效!

  1. 我尝试将地图目标设置为 处不存在的内容ngOnDestroy
ngOnDestroy() {
    this.map.setTarget("raargitaar");  // does not exist
}
Run Code Online (Sandbox Code Playgroud)

我认为这可能与目标没有再次初始化有关。但这不起作用

openlayers angular

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

powershell curl和WebRequest都遵循重定向

我试图弄清楚我的网页返回的状态代码,根据Linux子系统的卷曲,肯定是301(永久移动),但是在PowerShell上使用curl或WebRequest对象,它返回200(OK).

为什么是这样?

powershell curl webrequest

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

学说:指拥有不存在的副场(再次)

无法绕过它.我或多或少地从教程中复制了,但是分析器抛出了两个错误:

AppBundle\Entity\Brand关联AppBundle\Entity\Brand#devices是指不存在的拥有方字段AppBundle\Entity\Device#brands.

AppBundle\Entity\Device关联AppBundle\Entity\Device #brade是指不存在的反面字段AppBundle\Entity\Brand#brands.

class Brand {

    /**
     * @var int
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

...

    /**
     * @ORM\OneToMany(targetEntity="Device", mappedBy="brands")
     */
    private $devices;
}
Run Code Online (Sandbox Code Playgroud)

class Device {
    /**
     * @var int
     * @ORM\Id
     * @ORM\Column(name="id", type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

...

    /**
     * @ORM\ManyToOne(targetEntity="Brand", inversedBy="devices")
     * @ORM\JoinColumn(name="brand_id", referencedColumnName="id", nullable=true)
     */
    private $brand;
}
Run Code Online (Sandbox Code Playgroud)

symfony doctrine-orm

4
推荐指数
1
解决办法
4534
查看次数

Django:在 get_queryset 中返回 HttpResponseRedirect

我正在解决搜索表单中的查询。当查询只产生一个对象时,我想将用户直接重定向到该对象的详细信息页面。如果没有,他们应该登陆结果页面。我以为我会这样做:

class ResultsView(generic.ListView):
    template_name = "chars/results.html"
    context_object_name = "chars"
    slug_field = 'name'

    def get_queryset(self):
        char = self.kwargs.pop('slug', '')
        object_list = get_list_or_404(Char, name=char)
        if len(object_list) > 1:
            return object_list

        return HttpResponseRedirect(reverse('chars:details', args=(char,)))
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用,并b''为我的模板生成一个空字节串 ( )。有任何想法吗?

python django

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