相关疑难解决方法(0)

如何在Django REST Framework上启用CORS

如何在我的Django REST框架上启用CORS?该参考文献没有多大帮助,它说我可以用中间件做,但我怎么能这样做?

python django middleware cors django-rest-framework

69
推荐指数
10
解决办法
6万
查看次数

创建外键约束时出现问题

问题详情

'无法创建表djangoclientauth_tblusers(errno: 150“外键约束格式不正确”)')

我在做什么?

我在下面创建了一个 tinyint 自动增量字段,但在另一个表中引用它时导致了问题。

模型文件中的代码

class TinyIntField(AutoField):
    def db_type(self, connection):
        return "tinyint(3) AUTO_INCREMENT"

class tblroles(models.Model):
    role_id = TinyIntField(primary_key=True, verbose_name = "role_id")
    name = CharField(max_length = 20)

class tblusers(models.Model):
    user_id = BigAutoField(primary_key=True)
    role = ForeignKey(tblroles, on_delete = models.CASCADE)
    
Run Code Online (Sandbox Code Playgroud)

迁移文件中的代码

migrations.CreateModel(
    name='tblroles',
    fields=[
        ('role_id', clientauth.models.TinyIntField(primary_key=True, serialize=False, verbose_name='role_id')),
        ('name', models.CharField(max_length=20))
    ],
),
migrations.CreateModel(
    name='tblusers',
    fields=[
        ('user_id', models.BigAutoField(primary_key=True, serialize=False)),
        ('role', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='clientauth.tblroles')),
    ],
),
Run Code Online (Sandbox Code Playgroud)

赏金问题

on_delete=django.db.models.deletion.CASCADE, to='clientauth.tblroles'

上面代码中的这一行没有设置级联删除数据库端。我检查了文档,但找不到设置级联删除的文档。你能推荐一个吗?

python django python-3.9 django-3.2

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

Axios 被 Django REST 框架的 CORS 策略阻止

我正在尝试使用 Axios 向我的 API(Django REST 框架)发出请求,但出现以下错误:

Access to XMLHttpRequest at 'http://trvl.hopto.org:8000/api/airports/MSP/routes' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Run Code Online (Sandbox Code Playgroud)

当你使用 cUrl 来检查时,甚至很难:

curl -I -X GET   -H "Origin: http://localhost:3000"   -H 'Access-Control-Request-Method: GET'   http://trvl.hopto.org:8000/api/airports/MSP/routes 2>&1 | grep 'Access-Control-Allow-Origin'
Response: Access-Control-Allow-Origin: *

Full response from cUrl Options:
OPTIONS request: curl -I -X OPTIONS   -H "Origin: http://localhost:3000"   -H 'Access-Control-Request-Method: GET'   http://trvl.hopto.org:8000/api/airports/MSP/routes
HTTP/1.1 200 OK
Date: Wed, 27 Mar 2019 10:58:01 GMT
Server: WSGIServer/0.2 …
Run Code Online (Sandbox Code Playgroud)

javascript django-rest-framework reactjs django-cors-headers axios

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