小编Giu*_*lia的帖子

如何在 ReactJS 中验证数字输入

在 Django 中,您可以轻松地使用 MinValueValidator 和 MaxValueValidator 来验证 IntergerFields。
它们在 ReactJS 中的对应物是什么?

我在前端有一个表单(用 ReactJS 构建),其中多个字段是 type=number 字段,并且数字需要适合特定范围的值,即大于 0,小于 250。

在后端,我实现了这种控制使用 Min/Max ValueValidator 覆盖数字输入。我应该在 ReactJS 前端做什么?

谢谢!

validation reactjs

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

Django REST和ModelViewSet过滤

我之前使用的APIViews如下:

views.py

class AllProgramsApi(APIView):

    def get(self, request):
        user = self.request.user
        userprograms = Program.objects.filter(user=user)
        serializer = ProgramSerializer(userprograms, many=True)
        return Response(serializer.data)
Run Code Online (Sandbox Code Playgroud)

这是我的模特:

class Program(models.Model):

    program_name = models.CharField(max_length=50)
    program_description = models.CharField(max_length=250)
    cycles = models.ManyToManyField(Cycle)
    is_favourite = models.BooleanField(default="False")
    user = models.ForeignKey(User, on_delete=models.CASCADE)

    def get_absolute_url(self):
        return reverse('programs:program', kwargs={'pk': self.pk})

    def __str__(self):
        return self.program_name
Run Code Online (Sandbox Code Playgroud)

现在我发现了ModelViewSet,它看起来非常方便,但我似乎无法像以前在APIView中那样过滤用户.

我对使用ModelViewSet的views.py的尝试如下,它可以工作,但我得到的所有内容,而不仅仅是与单个用户相关的内容.

class AllProgramsApi(ModelViewSet):
    serializer_class = ProgramSerializer
    queryset = Program.objects.all()
Run Code Online (Sandbox Code Playgroud)

如何调整ModelViewSet,使其仅显示与发送请求的用户相关的内容?什么是最好的方法?

谢谢.

python django django-views django-rest-framework

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

在作为道具传递给组件的文本字符串中添加一些粗体文本

我在 React 中有一个可重用的组件,我可以将一些非常简单的 props 传递给:

const Section1 = (props) => (
 <div className="section">
  <div className="container is-narrow">
    <div className="content is-medium"><h2 className="title is-1 is-bottom-bordered">{props.section1Title}</h2></div>
      <div className="columns">
        <div className="column is-half">
          <div className="content">
              <blockquote>{props.section1Blockquote}</blockquote> 
          </div>
        </div>
        <div className="column is-half">
          <div className="content">
            <p>{props.section1Text}</p>
          </div>
        </div>
      </div>
  </div>
</div> 
Run Code Online (Sandbox Code Playgroud)

当我使用这个组件时,我会像这样传递道具:

<Section1
  section1Title="Example title"
  section1Blockquote="Example blockquote"
  section1Text="Example text"
/>
Run Code Online (Sandbox Code Playgroud)

在我作为道具传递的字符串中,是否可以对部分文本进行样式设置,使其加粗?不是整个字符串,只是其中的一部分。在上面的例子中,section1Blockquote,我怎样才能把“例子”这个词加粗?

非常感谢。

reactjs react-props

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

是否可以仅使用 HTML、CSS 和 JS 在 Linux Embedded 上开发 GUI?

我一直在对这个主题进行广泛的研究,但仍然没有找到合适的指南。我正在做的是为基于 Linux Embedded 的嵌入式系统创建一个 GUI,我想知道:

  • 是否可以使用 HTML、CSS 和 JS 对 GUI 进行编码?
  • 是否值得研究移植 React JS 等框架?
  • 有没有其他替代方案可以快速开发和满足用户界面?

我对此很陌生,如果有经验丰富的人能指出我正确的方向,我将不胜感激。非常感谢。

embedded user-interface embedded-linux

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

如何在 Flutter 中正确 JSON 编码/解码 Duration 字段

我正在使用转换包来执行以下任务:

factory Brick.fromJson(Map<String, dynamic> json) {
    return Brick(
      title: json['title'],
      expectedDuration: json['expected_duration'],
    );
  }


Future<Brick> createBrick(
      String title, Duration expDur) async {
    var url = 'https://api.com/bricks/';
    
    final response = await http.post(
      url,
      headers: <String, String>{
        "Content-Type": "application/json; charset=UTF-8",
      },
      body: convert.jsonEncode(<String, dynamic>{
        "title": "$title",
        "expected_duration": expDur,
      }),
    );
    if (response.statusCode == 201) {
      Brick newBrick = Brick.fromJson(convert.jsonDecode(response.body));
      notifyListeners();
      return newBrick;
    } else {
      throw Exception(
          '${response.statusCode} ${response.reasonPhrase}');
    }
  }
Run Code Online (Sandbox Code Playgroud)

当我调用 createBrick 函数时,出现以下错误:

未处理的异常:将对象转换为可编码对象失败:“持续时间”实例

我应该如何转换持续时间?Duration 类文档中没有提及它。

谢谢。

json dart flutter

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

Django 用户管理:如何避免每个用户看到其他用户的内容和数据?

在我的小型 Django 项目中,用户可以注册并通过填写一些 ModelForms 来使用他们自己的数据填充现有模型。

问题是,登录后,任何用户不仅可以看到自己的数据,还可以看到其他用户创建的数据。我需要避免这种情况。
每个用户都应该能够查看、修改和与他们自己的数据进行交互。

每个模型都有一个ForeignKey链接到User.
我可能在视图中遗漏了什么吗?
它们只是不引用的基于类的视图User,它们只有LoginRequiredMixin装饰器。

对于登录视图,我使用的是 Django 标准,对于注册视图,我创建了一个UserFormView.

# Register page
url(r'^register/$', views.UserFormView.as_view(), name='register'),

# Login page
url(r'^accounts/login/$', auth_views.LoginView.as_view(), name='login'),
Run Code Online (Sandbox Code Playgroud)

以下是我的看法:

class AllProgramsView (LoginRequiredMixin, generic.ListView):
    template_name = 'programs/index.html'
    context_object_name = 'programs_list'

    def get_queryset(self):
        return Program.objects.all()

class ProgramDetailView (LoginRequiredMixin, generic.DetailView):
    model = Program
    template_name = 'programs/program.html'

class ProgramCreate(LoginRequiredMixin, CreateView):
    model = Program
    form_class = ProgramFormClass

class ProgramUpdate(LoginRequiredMixin, UpdateView):
    model = Program
    form_class = ProgramFormClass
Run Code Online (Sandbox Code Playgroud)

models.py …

python django django-users

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