是否可以createEventDispatcher像本机浏览器事件一样使用目标对象调度 svelte 事件(使用 创建)?
即在处理程序端接收event.target.value而不是 event.detail。
如果不使用自定义 Express 服务器,我找不到 SvelteKit 的教程。有 API 端点的替代方案吗?
我尝试自己设置 API 端点,但无法让它在数据更改时发送更新。
我正在按照 Wagtail 文档来自定义用户模型。我想将图像添加到用户模型中。
Django 版本:2.0.8,Wagtail 版本:2.1
问题
使用图像选择器字段选择图像并单击“保存”后,出现以下错误:
'没有提交文件。检查表单上的编码类型。”
代码
模型.py
from django.db import models
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
display_image = models.ForeignKey('wagtailimages.Image',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name='+')
Run Code Online (Sandbox Code Playgroud)
表格.py
from django import forms
from django.utils.translation import ugettext_lazy as _
from wagtail.users.forms import UserEditForm, UserCreationForm
from wagtail.images.widgets import AdminImageChooser
class CustomUserEditForm(UserEditForm):
display_image = forms.ImageField(
widget=AdminImageChooser(), label=_('Autorenbild'))
class CustomUserCreationForm(UserCreationForm):
display_image = forms.ImageField(
widget=AdminImageChooser(), label=_('Autorenbild'))}
Run Code Online (Sandbox Code Playgroud)
编辑.html
{% extends "wagtailusers/users/edit.html" %}
{% block extra_fields %}
{% include "wagtailadmin/shared/field_as_li.html" with field=form.display_image %}
{% …Run Code Online (Sandbox Code Playgroud) 我正在测试BroadcastChannel功能,但遇到了麻烦。我打开两个 Chrome 窗口以及每个窗口的开发工具。我在控制台上写:
const z = new BroadcastChannel('blarg')
z.onmessage = function (ev) {console.log(ev)}
Run Code Online (Sandbox Code Playgroud)
我可以检查 z ,它已将函数保存到 onmessage 属性中,因此一切看起来都不错。然而,当我测试时:
z.postMessage('sweet')
Run Code Online (Sandbox Code Playgroud)
在其中一个控制台中,另一个控制台中没有任何显示。我希望由于两个 Chrome 窗口都订阅了广播频道blarg,并且具有控制台记录发布消息的功能,因此我会看到该消息sweet显示在另一个控制台中,但没有任何反应。
那么两个问题:
我不能BroadcastChannel像这样在开发工具控制台中测试界面吗?
如果是这样,我对 BroadcastChannel 的工作原理缺少什么?
我有一组vm2-prod通过命名的主机vm14-prod。这些在 Ansible 主机清单中分组为vmware_hosts。我想排除这样的主机子集:
- name: testing play
hosts: vmware_hosts:!vm[8-10]-prod
Run Code Online (Sandbox Code Playgroud)
根据 Ansible 文档,这似乎应该排除vm7-prod通过vm9-prod. 但是,我得到“无法匹配主机模式,忽略 vm[8-10]-prod”,就像它读取文字主机名“vm[8-10]-prod”而不是数组一样。
我也尝试过vm[8:10]-prod,但它给出了同样的错误。
怎么了?
我是第一次探索 SvelteKit,我构建了我的第一个简单应用程序,我想将其作为静态页面部署到我的 Apache 服务器
据我了解适配器静态是可行的方法,所以我安装了它并将我的svelte.config.js文件更改为:
import preprocess from 'svelte-preprocess';
import adapter from '@sveltejs/adapter-static';
/** @type {import('@sveltejs/kit').Config} */
const config = {
preprocess: preprocess(),
kit: {
adapter: adapter({
paths: { base: "/PERSONAL_PATH" },
fallback: 'index.html',
precompress: false,
})
}
};
export default config;Run Code Online (Sandbox Code Playgroud)
现在:
运行npm run build没有任何错误,问题是当我检查index.html页面的所有依赖项(或者样式表和 JS 文件的 URL,如果你愿意的话......)时,有两个问题,如下所示:
PERSONAL_PATH我希望的文件夹中<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="description" content="" />
<link rel="icon" href="./favicon.png" />
<meta …Run Code Online (Sandbox Code Playgroud)我有一个相当烦人的问题:
在我的模板中
<div class="form-group">
{{ form.aboutme.errors }}
<label for="aboutme">About Me:</label>
<textarea class="form-control" rows="10" id="aboutme" value="{{form.aboutme}}"></textarea>
</div>
Run Code Online (Sandbox Code Playgroud)
它呈现预先填充的文本区域,但带有值,但">在框的末尾打印冗余。
原始 html 看起来像这样:
<textarea class="form-control" rows="10" id="aboutme" value="<p><textarea cols=" 40"="" name="aboutme">My Name is Django</textarea>
Run Code Online (Sandbox Code Playgroud)
显然textarea其中插入了一个意想不到的标签。
该字段是:
aboutme=models.TextField(blank=True, verbose_name=_('About Me'))
Run Code Online (Sandbox Code Playgroud)
并且在其各自的 ModelForm 类中没有用于它的特殊小部件。
那么真的很困惑如何正确渲染这个字段?
我有一个 AuthService,主要有两种方法:
getAuthToken(返回 Promise,因此可以延迟调用/在单个集合上阻塞等待多次调用)
refreshToken(还返回一个 Promise,使用原始 JWT 上可用的刷新令牌来请求新的身份验证令牌)
我想自动
这是代码:
import { HttpEvent, HttpHandler, HttpHeaders, HttpInterceptor, HttpRequest } from "@angular/common/http";
import { from, Observable } from "rxjs";
import { Injectable } from "@angular/core";
import { AuthService } from "./auth.service";
@Injectable()
export class AuthHttpInterceptor implements HttpInterceptor {
constructor(
private _authService: AuthService,
) {
}
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return from(this.addBearerToken(req, next));
}
private async addBearerToken(req: HttpRequest<any>, next: HttpHandler): Promise<HttpEvent<any>> {
const token = …Run Code Online (Sandbox Code Playgroud) 我目前有一个调用is_active模型的布尔字段。每当我在 Django 管理中手动设置此字段True(最初它是 false)时,我希望它执行某个操作。当设置为 时,如何触发 Django 中的此字段来执行此特定操作True?
我听说过一种save_model()方法,但我不知道它是如何工作的。
class Company(models.Model):
name = models.CharField(max_length=100, unique=True)
is_active = models.BooleanField(default=False)
def __str__(self):
return self.name
Run Code Online (Sandbox Code Playgroud) Svelte 存储文档显示正在更新字符串或整数,但我没有在存储中找到任何动态函数。
我不明白如何使该getData函数可写,以便通知 html 更改。
在下面的示例中,我希望在调用函数b后显示。updateKey
您可以在此处找到 REPL 中的最小代码:https://svelte.dev/repl/3c86bd48d5b5428daee514765c926e58 ?version=3.29.7
此处使用相同的代码,以防 REPL 宕机:
应用程序.svelte:
<script>
import { getData } from './store.js';
import { updateKey } from './store.js';
setTimeout(updateKey, 1000);
</script>
<h1>{getData()}!</h1>
Run Code Online (Sandbox Code Playgroud)
商店.js
import {setContext} from 'svelte';
import {writable} from 'svelte/store';
var data = {
'a': 'a',
'b': 'b'
};
var key = 'a';
export const getData = function() {
return data[key];
}
export const updateKey = () => {
key = 'b';
}
Run Code Online (Sandbox Code Playgroud)
目标是在商店中使用动态功能。
django ×3
svelte ×3
javascript ×2
svelte-3 ×2
sveltekit ×2
angular ×1
ansible ×1
bearer-token ×1
django-admin ×1
django-views ×1
interceptor ×1
jwt ×1
node.js ×1
python ×1
svelte-store ×1
typescript ×1
wagtail ×1