我想要一些环境,比如说development, production, test。这些环境应该是独立的,并使用自己的一组配置参数,例如 DB、SERVER_PORT、USER 等。它们不应该位于代码库中,所以我认为它们应该是不同的 .env 文件。也就是说,我应该能够根据活动的环境加载不同的 .env 文件。另外,还不清楚我必须在哪里设置环境切换器。
也许它应该是一个具有 NODE_ENV 参数的单个 .env 文件,该参数可以设置为上述任何值,无论是开发、生产还是测试。根据此参数的值,会自动加载一组必要的配置参数。
我已经阅读了文档,目前对我来说似乎有点令人困惑。
似乎应该有一些配置工厂。
这是类验证器抛出的错误。这是我的 dto 的代码:
export class UpdateEntryBodyDto {
@ApiProperty()
@Type(() => Number)
@IsNumber()
id: number;
@ApiProperty()
@IsString()
@IsOptional()
@Validate(IsUniqueEntryTitle)
title?: string;
}
Run Code Online (Sandbox Code Playgroud)
我尝试了更多不同的配置,但我遇到了同样的该死的错误。我对这个错误感到完全困惑,无法弄清楚这段代码到底出了什么问题,我按照这里推荐的方式进行操作,但无济于事......
有人可以帮忙吗?
当我决定弄清楚为什么我正在从事的项目如此重要时,这一切就开始了。我运行了以下脚本:
git rev-list --objects --all \
| git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' \
| sed -n 's/^blob //p' \
| sort --numeric-sort --key=2 \
| cut -c 1-12,41- \
| $(command -v gnumfmt || echo numfmt) --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest
Run Code Online (Sandbox Code Playgroud)
并找出哪些提交具有最重的文件。接下来,我想看看谁是这些提交的作者以及何时尝试运行以下内容:
git show --stat COMMIT_HASH
Run Code Online (Sandbox Code Playgroud)
我收到一堆官样文章,当我尝试回滚到提交时,我收到上述错误。
所以我的问题是:如何找到提交的作者?
控制器的方法之一如下所示:
@httpGet('')
public async getProducts(@queryParam() queryBody: object): Promise<Products[]> {
return this.productService.getProducts(queryBody);
}
Run Code Online (Sandbox Code Playgroud)
我想要一个装饰器,可以@Catch()在该方法上使用(如果像这样调用那么它应该是一个装饰器工厂),它的职责是捕获来自服务方法的错误/异常。我只是想将错误处理逻辑与控制器中的逻辑解耦。
我试图想出一个有点可重用的守卫,看起来我需要将一个字符串参数传递给一个守卫。在nestjs中可以实现吗?
我有UserEntity和AddressEntity,它们是相关的OneToOne,即一个用户可能只有一个地址。UserEntity有字段firstName, secondName, address。AddressEntity有字段country和city.
如果我想更新UserEntity而不对其关系进行更新,我会这样做:
await entityManager.getRepository(UserEntity)
.createQueryBuilder('users')
.update(UserEntity)
.set(updateUserObject)
.where('users.id = :userId', { userId })
.execute();
Run Code Online (Sandbox Code Playgroud)
其中updateUserObject由请求正文组成。也就是说,如果我需要更新firstName,该对象将如下所示:{ firstName: 'Joe' }。现在不清楚的是,如果我有以下内容,如何使用该构建器updateUserObject:
{
firstName: "Bob",
address: {
"city": "Ottawa"
}
}
Run Code Online (Sandbox Code Playgroud)
官方文档没有解决此类情况。
我正在阅读有关请求库的文档,它似乎已经过时了或什么的。我一步一步地尝试了那里显示的所有示例,但在尝试运行以下代码时遇到了问题:
import requests
from PIL import Image
from StringIO import StringIO
response = requests.get('http://www.github.com')
i = Image.open(StringIO(response.content))
Run Code Online (Sandbox Code Playgroud)
那篇文章来自官方文档。我得到的第一个错误是 ImportError: no module named StringIO
好的,然后我发现该模块不再存在,为了导入 StringIO 必须编写from io import StringIO. 我就是这么做的。再次尝试运行代码,这次它出错了“TypeError:initial_value must be str or None, not bytes”。我到底做错了什么?我不遵循......我所做的只是尝试运行官方文档中的代码......我一无所知。
编辑:是的……要使用 PIL,必须安装 Pillow。
我有一个CategoryEntity和EntryEntity。类别可以包含条目。我的任务是克隆属于一个类别的条目并将其移动到另一个类别。
使用 queryRunner 我可以编写以下代码:
await queryRunner.manager.getRepository(CategoryEntity)
.createQueryBuilder()
.relation(CategoryEntity, 'entries')
.of(category)
.add(entry);
Run Code Online (Sandbox Code Playgroud)
但它只会将所选条目复制粘贴到所选类别,也就是说,插入的实体将具有相同的 id 等,所以如果我删除父级子级(插入的实体也会被删除),但它不是我正在寻找的行为。我需要一个完整的克隆,所以我可以这样做:
const { id, ...updateEntryBody } = entry;
const newEntry = await this.entryRepository.save(updateEntryBody);
await queryRunner.manager.getRepository(CategoryEntity)
.createQueryBuilder()
.relation(CategoryEntity, 'entries')
.of(category)
.add(newEntry);
Run Code Online (Sandbox Code Playgroud)
它将创建该条目的克隆,但这里还有一个与图像有关的问题条目。也就是说,条目可以包含图像。因此,我认为,我必须对条目可能包含的一大堆图像执行类似的操作。我一点也不喜欢这个主意。
我的问题是:有没有更好的方法来处理这个问题?
我是C++的初学者,试图通过编写尽可能多的各种小程序(programmlets)来了解我遇到的每个新概念.所以我刚刚编造了以下代码:
#include <iostream>
using namespace std;
int main(){
int inumbers[] = {1 ,2 , 3, 4, 5};
int *p;
int i;
p = inumbers;
for(i = 0; p[i]; i++) cout << p[i] << '\n';
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我无法理解一个看似简单的事情:编译器如何"知道"何时停止递增循环变量"i"?令人惊讶的是,代码确实按照预期的方式工作.
我正在尝试使MongoDB和Django以我想要的方式彼此相处。这是我尝试从rest_framework_mongoengine导入视图集时遇到的错误。
整个错误如下所示:
ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
找不到settings.py或什么?如果是这样,我不知道为什么!即,为什么没有其他模块出现此问题呢?
这是我的 INSTALLED APPS
INSTALLED_APPS = [
'rest_framework',
'rest_framework_mongoengine',
'mongoengine.django.mongo_auth',
'rest_framework.authtoken',
'corsheaders',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_extensions',
'core',
'core.essences.user',
'core.essences.user.authentication',
'core.essences.test_result',
]
Run Code Online (Sandbox Code Playgroud)