小编nob*_*are的帖子

尝试编写只读数据库 - Django w/SELinux错误

我有一个CentOS服务器,我有Apache,Django,Django CMS和mod_wsgi.我的Django项目文件存储在/srv目录中,出于安全原因我打开了SELinux.

我成功地将Django-CMS集成到了Django中,当我访问本地IP时,我看到了我的页面.但是,当我尝试访问/ admin(我可以开始使用CMS功能)时,我明白了DatabaseError at /admin/ attempt to write a readonly database.

好的.

所以,因为.sqlite我的项目文件夹中有一个文件,所以我运行了一个ls -l返回的文件:

-rw-r--r--.  1 root root 133120 Jan 5 11:53   DATABASE.sqlite
Run Code Online (Sandbox Code Playgroud)

好吧,所以我想可能由于某些权限原因Apache可能无法读取该文件所以在对Stackoverflow上的类似问题进行了大量研究后,我跑了:

> chmod 664 DATABASE.sqlite
> chown apache /srv/mysite
> chown apache /srv/mysite/DATABASE.sqlite
Run Code Online (Sandbox Code Playgroud)

现在,ls -l输出显示:

-rw-rw-r--.  1 apache root 133120 Jan 5 11:53  DATABASE.sqlite
Run Code Online (Sandbox Code Playgroud)

不幸的是,在我的Django应用程序上尝试访问/ admin时,我仍然遇到同样的错误.任何帮助将不胜感激!可能与SELinux权限有关,但我不知道从哪里开始诊断正在进行的权限问题.

编辑:

我跑了

> chown apache:apache /srv/mysite
> chown apache:apache /srv/mysite/DATABASE.sqlite
Run Code Online (Sandbox Code Playgroud)

并快速ls -l显示mysite目录和.sqlite文件的所有者现在apache.但是,在尝试访问该 …

sqlite django selinux

45
推荐指数
5
解决办法
10万
查看次数

将sudo与.vimrc一起使用

我正在使用CentOS并.vimrc在我的/home目录中创建了一个文件.我通过创建一个txt文件来测试它,是的,这很好.现在,我的项目文件在我的/srv目录中打开了SELinux.我尝试打开一个文件:vim README.txt是的,我的.vimrc设置仍在应用中.

现在,因为我在/srv目录中,只是vim意味着我的文件是只读的.所以,我这样做sudo vim README.txt是为了能够编辑文件.现在,问题在于,一旦我这样做sudo,我的.vimrc设置都没有应用.我尝试.vimrc/srv文件夹中创建副本,但这也无效.

如何.vimrc在使用时应用设置sudo

vim centos

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

打字稿对象解构被 ESLint no-unused-vars 规则捕获

我在 Typescript 中有一个对象,我正在解构它以提取部分对象。但是,它没有通过我的短绒检查:

async someFunction(username: string): Promise<UserDTO> {
    const userEntity = await getUserByUsernameAsync(username);

    if (userEntity ) {
        const { password, ...result } = userEntity ;
        return result;
    }

    return null;
}
Run Code Online (Sandbox Code Playgroud)

如您所见,上面的代码抓取了一个对象并去掉了对象的一些我们不想返回的部分,并返回了对象的其余部分。

但是,linter 发出警告:

warning  'password' is assigned a value but never used      @typescript-eslint/no-unused-vars
Run Code Online (Sandbox Code Playgroud)

对象解构正在分配passport给一个值和result另一个对象值,并且passport是一个未被使用的值。如何解决此问题以通过 linter?

javascript typescript eslint typescript-eslint

15
推荐指数
3
解决办法
2134
查看次数

如何将Excel数据存储到Firebase中?

我有一张包含所有数据(成千上万行)的Excel表格.如何将"加载"到Firebase中以供使用?

我已经创建了一个Firebase项目,并尝试查看实时数据库的一些教程,但这并不是我想要的.我还不想要实时数据.我只想要首先加载的数据.我该怎么做呢?

谢谢!

excel firebase firebase-realtime-database

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

Typescript - React组件中的"找不到名称"错误

我正在将现有的React代码迁移到TypeScript,我遇到了很多问题,其中一个问题是我制作.js文件时出现了很多"找不到名字"错误.ts.

这是有问题的代码:

import React from 'react';

const Footer = ({ children, inModal }) => (
    <footer className={'tableBottomPanel' + (inModal ? " in-modal" : "") }>
        <div>
            {children}
        </div>
    </footer>
);

export default Footer;
Run Code Online (Sandbox Code Playgroud)

从五行<footer></footer>的红色下划线,并给我的各种错误,这取决于在那里我将鼠标悬停我的鼠标,如:

  • 找不到名字'页脚'.
  • '>'预计
  • 找不到名字'div'
  • 未终止的正则表达式文字
  • 运算符'<'不能应用于类型'boolean'和'RegExp'

这是我的tsconfig.json档案:

{
    "compilerOptions": {
        "outDir": "./dist/", // path to output directory
        "sourceMap": true, // allow sourcemap support
        "strictNullChecks": true, // enable strict null checks as a best practice
        "module": "es6", // …
Run Code Online (Sandbox Code Playgroud)

typescript reactjs

11
推荐指数
4
解决办法
8447
查看次数

当同步为 true 时,TypeORM 抛出 QueryFailedError 表已存在于 MySQL 上

我正在使用 NestJS、TypeORM 和 MySQL 来构建 Web 应用程序。

我正在使用一个.env文件传递一些环境变量以连接到我的本地数据库。同步设置为true

应用程序模块.ts

@Module({
    imports: [
        ConfigModule.forRoot({ envFilePath: '.env' }),
        TypeOrmModule.forRootAsync({
            imports: [ConfigModule],
            useFactory: (configService: ConfigService) => ({
                type: 'mysql',
                host: configService.get('TYPEORM_HOST'),
                port: configService.get('TYPEORM_PORT'),
                username: configService.get('TYPEORM_USERNAME'),
                password: configService.get('TYPEORM_PASSWORD'),
                database: configService.get('TYPEORM_DATABASE'),
                autoLoadEntities: true,
                synchronize: configService.get('TYPEORM_SYNCHRONIZE'),
            }),
            inject: [ConfigService],
        }),
    ],
    controllers: [AppController],
    providers: [AppService],
})
export class AppModule {
    constructor(private connection: Connection) {}
}
Run Code Online (Sandbox Code Playgroud)

此外,我有一个导入用户实体的用户模块。

用户.module.ts

import { User } from './Entities/User.entity';

@Module({
    imports: [TypeOrmModule.forFeature(
        [User]
    )],
    controllers: [UsersController],
    providers: [UsersService], …
Run Code Online (Sandbox Code Playgroud)

mysql typeorm nestjs

11
推荐指数
3
解决办法
2万
查看次数

在 React 类组件中使用 ResizeObserver

我在 Chrome 上使用 React 15 并希望连接一个事件侦听器来检测对父容器的更改。在四处寻找选项后,我遇到了 ResizeObserver,但不确定如何让它在我的项目中工作。

目前,我将它放在我的构造函数中,但它似乎没有打印任何文本,我不确定在observe调用中放入什么。

class MyComponent extends React.Component {
    constructor(props) {
        super(props);

        const resizeObserver = new ResizeObserver((entries) => {
            console.log("Hello World");
        });

        resizeObserver.observe(somethingGoesHere);
    }

    render() {
        return (
            <AnotherComponent>
                <YetAnotherComponent>
                </YetAnotherComponent>

                <CanYouBelieveIt>
                </CanYouBelieveIt>

                <RealComponent />
            </AnotherComponent>
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

理想情况下,我也不想RealComponent用 a包装div并给它div一个 id。有没有办法RealComponent直接到?

我的目标是观察任何调整大小的变化,RealComponentMyComponent也很好。我应该在somethingGoesHere插槽中放什么?

编辑:

为了让一些东西工作,我咬紧牙关并div在 周围缠了一个标签RealComponent。然后我给了它一个 id<div id="myDivTag">并更改了observe调用:

resizeObserver.observe(document.getElementById("myDivTag"));
Run Code Online (Sandbox Code Playgroud)

但是,在运行时,我得到:

未捕获的类型错误:resizeObserver.observe 不是函数 …

javascript dom resize reactjs

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

Swift 3 - 如何在正则表达式中提取捕获的组?

我正在使用Swift 3并尝试访问捕获的组.

let regexp = "((ALREADY PAID | NOT ALR | PROVIDER MAY | READY | MAY BILL | BILL YOU | PAID)((.|\\n)*))(( \\d+)(\\.+|-+)(\\d\\d))"

// check if some substring is in the recognized text
if let range = stringText.range(of:regexp, options: .regularExpression) {
    let result = tesseract.recognizedText.substring(with:range)
}
Run Code Online (Sandbox Code Playgroud)

我希望能够提取出捕获的最后两个数字(\d\d),所以如果文本是:ALREADY PAID asfasdfadsfasdf 39.15,它将提取15.这是一个正则表达式构建器,显示我想要的内容.通常情况下,我可以做到$8第8组被提取,但我不知道如何在Swift 3中做到这一点.

http://regexr.com/3fh1e

regex swift swift3

9
推荐指数
3
解决办法
8783
查看次数

React - 如何检查特定字体是否已加载?

假设我的字体如下:

@font-face {
    font-family: 'MyGreatFont';
    src: url(~"./font/greatfont.woff2") format('woff2'),
        url(~"./font/greatfont.woff") format('woff');
    font-weight: 600;
    font-style: normal;
}
Run Code Online (Sandbox Code Playgroud)

在我使用它的地方,我会做类似的事情font-family: 'MyGreatFamily', san-serif

为了避免出现无样式文本的闪烁,特别是在下载速度较慢的设备上,我希望将后备字体设置为与网络字体不同的样式。

为此,我有几个问题。我已经阅读了一些关于document.fonts及其方法、checkready的内容onloadingdone

首先,我不太确定要给出什么参数,document.fonts.check以便在页面完全加载后返回 true。我已经尝试过check('MyGreatFont'),,,甚至尝试了字体大小的计算值check('600 MyGreatFont'):。check('1em MyGreatFont')check('19.2px MyGreatFont)

全部返回false(这是不正确的,因为我知道我的页面已完全加载并应用了正在应用的网络字体)或错误:Uncaught DOMException: Failed to execute 'check' on 'FontFaceSet': Could not resolve 'Niche' as a font.

其次,由于我在一个页面上可能有多种网络字体,因此我想在特定网络字体可用时应用我的特殊样式。有没有办法做到这一点?

到目前为止,我有:

const MyPageComponent = () => {
    const [webFontsLoaded, setWebFontsLoaded] = useState(false)

    useEffect(() => {
        async function areFontsReady() …
Run Code Online (Sandbox Code Playgroud)

javascript webfonts font-face reactjs

9
推荐指数
1
解决办法
5763
查看次数

TypeORM:尝试手动运行迁移时“没有待处理的迁移”

我有一个新的 Web 应用程序,并且编写了一个迁移器来创建用户表。但是,无论我尝试什么,typeorm 似乎都找不到此迁移器,因此也不会运行它。

我的文件结构(未显示其他文件/文件夹):

??? Server
?   ??? dist
|   |   ??? Migrations
|   |   |   ??? 1234567891234567890-AddUserTable.js
|   |   |   ??? 1234567891234567890-AddUserTable.js.map
|   |   |   ??? 1234567891234567890-AddUserTable.d.ts
?   ??? src
|   |   ??? Migrations
|   |   |   ??? 1234567891234567890-AddUserTable.ts
|   |   ??? app.module.ts
Run Code Online (Sandbox Code Playgroud)

app.module.ts

@Module({
    imports: [
        ConfigModule.forRoot({ envFilePath: '.env' }),
        TypeOrmModule.forRootAsync({
            imports: [ConfigModule],
            useFactory: (configService: ConfigService) => ({
                type: 'mysql',
                host: configService.get('TYPEORM_HOST'),
                port: +configService.get<number>('TYPEORM_PORT'),
                username: configService.get('TYPEORM_USERNAME'),
                password: configService.get('TYPEORM_PASSWORD'),
                database: configService.get('TYPEORM_DATABASE'),
                synchronize: configService.get('TYPEORM_SYNCHRONIZE'),
                entities: [__dirname + '/**/*.entity{.ts,.js}'],
                migrations: …
Run Code Online (Sandbox Code Playgroud)

mysql typeorm nestjs

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