小编edc*_*che的帖子

如何使用for循环进行Fetch?

我正在使用 React 创建一个应用程序。我必须获取一些数据。这是我的获取语句:

const [periods] = useFetch('/company/' + slug + '/waterfall?colIndexOffset=6 ');
Run Code Online (Sandbox Code Playgroud)

最后,这是一个6但我有这样的问题。我有句号,并且每个对象的这些句号都会改变。

const [period_waterfall] = useFetch('/company/' + firminfo.code + '/periods');
Run Code Online (Sandbox Code Playgroud)

我从那里调用周期,我发现周期的长度是这样的:

var length = period_waterfall.periods.length
Run Code Online (Sandbox Code Playgroud)

我应该多次调用此periodsfetch (次数length)。

我试过这个:

for (let i = 0; i < length; i++) {
        my_array.push(useFetch('/company/' + slug + '/waterfall?colIndexOffset=' + i))
      }
Run Code Online (Sandbox Code Playgroud)

但它给出了错误:React Hook“useFetch”可能会执行多次。可能是因为它是在循环中调用的。

我该如何处理?

javascript reactjs

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

如何定期运行带参数的函数?

DashboardData我的系统上有一个每个用户填写的表格(模型)。在此表单中,我们要求提供用户名、密码以及要更新到另一个系统的范围。此范围内的选项有每周一次、每月一次和每年一次。

根据用户选择的时间间隔,我将按照这些时间间隔运行一个函数。在此函数中,我将从用户填写的表单中获取用户名和密码作为参数。例如,在用户名,密码表单中,选择每周一次,然后我必须每周运行一次 myFunction(用户名,密码)。

我尝试用apscheduler这个。但在 apps.py 中我无法到达 request.user,因此我无法获取数据。我必须使用 request.user 来运行我的函数。

表格.py

class SetupForm(forms.ModelForm):
    # Time
    PERIOD = (
        ('168', 'Once a week'),
        ('720', 'Once a month'),
        ('8766 ', 'Once a year'),
    )
    n_username = forms.CharField()
    n_password = forms.CharField(widget=forms.PasswordInput)
    period = forms.CharField(max_length=200, widget=forms.Select(choices=PERIOD)))

    class Meta:
        model = DashboardData
        fields = ('n_username', 'n_password','period')
Run Code Online (Sandbox Code Playgroud)

模型.py

class DashboardData(models.Model):
    user = models.ForeignKey(UserProfile, on_delete=models.CASCADE, null=True) # request.user
    n_username = models.CharField(max_length=250)
    n_password = models.CharField(max_length=250)
    period = models.CharField(max_length=250)
Run Code Online (Sandbox Code Playgroud)

函数.py

class myFunction():
    def __init__(self, n_user, n_password):
        self.time …
Run Code Online (Sandbox Code Playgroud)

python django

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

Django 如何解决应用程序尚未加载错误?

我用于apscheduler我的 Django 项目。我试图每 10 秒列出一次所有用户。但是当我尝试时出现错误:

django.core.exceptions.AppRegistryNotReady:应用程序尚未加载。

调度程序.py

from apscheduler.schedulers.background import BackgroundScheduler
from accounts.models import UserProfile

sched = BackgroundScheduler()
def period():
    users = UserProfile.objects.all()
    print(users)
def start():
    sched.add_job(period, 'interval', seconds=10)
    sched.start()
Run Code Online (Sandbox Code Playgroud)

应用程序.py

from django.apps import AppConfig
from dashboard.scheduler import start

class DashboardConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'dashboard'
    def ready(self):
        start()
Run Code Online (Sandbox Code Playgroud)

帐户/模型.py

from django.contrib.auth.models import AbstractUser
from django.db import models


class UserProfile(AbstractUser):
    username = models.CharField(max_length=500, unique=True)
    first_name = models.CharField(max_length=200)
    last_name = models.CharField(max_length=200)
    password = models.CharField(max_length=250)
    email = models.EmailField(max_length=254)
    isUserActive …
Run Code Online (Sandbox Code Playgroud)

python django apscheduler

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

标签 统计

django ×2

python ×2

apscheduler ×1

javascript ×1

reactjs ×1