我正在尝试添加navbar到我的网站,但是当我添加它切换按钮不起作用.
这是我的navbar代码:
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
<form class="form-inline my-2 my-lg-0">
<input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
</form>
</div>
</nav>
Run Code Online (Sandbox Code Playgroud)
这是我所包含的内容:
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" …Run Code Online (Sandbox Code Playgroud) 我在Kotlin中制作了抽屉菜单,我想使用此菜单项。在Java中,我正在调用onNavigationItemSelectedmethod,但是当我想在Kotlin中使用它时,它没有出现。这是我的代码:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/drawerLayout"
tools:context="com.example.zamknijryjx.liobrus.UserActivity">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/imie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="40dp"
android:text="Imie"
android:textSize="50sp"
android:textColor="@color/black"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
<android.support.design.widget.NavigationView
android:layout_width="wrap_content"
android:layout_height="match_parent"
app:menu="@menu/navigation_menu"
android:layout_gravity="start"
app:headerLayout="@layout/navigation_header">
</android.support.design.widget.NavigationView>
</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)
这里是navigation_menu.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/nav_home"
android:title="Home"/>
<item android:id="@+id/nav_sprawdziany"
android:title="Sprawdziany"/>
<item android:id="@+id/nav_prace"
android:title="Prace klasowe"/>
</menu>
Run Code Online (Sandbox Code Playgroud)
并在我的活动中进行编码:
mToggle = ActionBarDrawerToggle(this, drawerLayout, R.string.open, R.string.close)
drawerLayout.addDrawerListener(mToggle!!)
mToggle!!.syncState()
supportActionBar!!.setDisplayHomeAsUpEnabled(true)
override fun onOptionsItemSelected(item: MenuItem?): Boolean {
if (mToggle!!.onOptionsItemSelected(item)) {
return true
}
return super.onOptionsItemSelected(item) …Run Code Online (Sandbox Code Playgroud) 我的序列化器很简单serializers.py,我想使用其中一个字段进行验证,validate(self, data)但它不起作用。
这是我的代码:
class DataUpdateSerializer(serializers.Serializer):
username = serializers.CharField()
password = serializers.CharField(write_only=True)
def validate(self, data):
if data['username'] != 'test':
raise serializers.ValidationError('Wrong username')
return data
Run Code Online (Sandbox Code Playgroud)
我不知道这是否有帮助,但这是我的views.py
class DataUpdateAPI(views.APIView):
serializer_class = DataUpdateSerializer
def post(self, request):
username = request.POST.get('username')
password = request.POST.get('pass')
return Response("Just test response")
Run Code Online (Sandbox Code Playgroud)
我不知道这段代码有什么问题。先谢谢您的帮助!
我的Golang项目中的SQLite3有问题。我想将数据插入数据库,但这给了我错误database is locked。我知道这是同样的问题(Sqlite3错误:数据库被锁定在golang中),但是从那里得到的答案无效。我不知道我在做什么错。这是我的代码:
var (
tpl *template.Template
db, _ = sql.Open("sqlite3", "database/pastozbior.db")
)
func main() {
http.HandleFunc("/", addCopypasta)
http.ListenAndServe(":8000", nil)
}
func getCopypasta() []Copypasta {
copypastaList := []Copypasta{}
var title, body string
rows, _ := db.Query("select title, body from copypasta")
for rows.Next() {
rows.Scan(&title, &body)
copypastaList = append(copypastaList, Copypasta{title, body})
}
defer rows.Close()
return copypastaList
}
func addCopypasta(w http.ResponseWriter, r *http.Request) {
tpl.ExecuteTemplate(w, "main.html", nil)
if r.Method == "POST" {
r.ParseForm()
// add copypasta to database …Run Code Online (Sandbox Code Playgroud) 我尝试创建一个基于 alpine 的 docker 镜像,但是每当我尝试运行它时,我都会收到以下错误消息:standard_init_linux.go:219: exec user process caused: exec format error。
这是仅运行可执行文件的基本 Dockerfile:
FROM alpine:3.13.5
WORKDIR /usr/local/bin
COPY profiles-svc /usr/local/bin
EXPOSE 20002/tcp
ENTRYPOINT ["/usr/local/bin/profiles-svc"]
Run Code Online (Sandbox Code Playgroud)
这profiles-svc是由命令生成的可执行文件go build。
我在我的 ubuntu 笔记本电脑上没有注意到这个问题,只发生在 Macbook M1 上。
先谢谢您的帮助!
我有DetaiView对我的帖子,我想用这样的形式,这种观点,所以我决定用DetailView用FormMixin。我需要为此表格设置一些首字母,但我不知道该怎么做。这是我的代码:
models.py
class Comment(models.Model):
post = models.ForeignKey(Post, related_name="comments", on_delete=models.CASCADE)
name = models.CharField("Nick", max_length=80)
email = models.EmailField()
body = models.TextField("Body")
created = models.DateTimeField("created", auto_now_add=True)
updated = models.DateTimeField("Updated", auto_now=True)
Run Code Online (Sandbox Code Playgroud)
forms.py
class CommentForm(forms.ModelForm):
class Meta:
model = Comment
fields = (
"name",
"email",
"body"
)
Run Code Online (Sandbox Code Playgroud)
views.py
class PostDetailView(FormMixin, DetailView):
model = Post
form_class = CommentForm
template_name = "newspaper/post-detail.html"
def get_success_url(self):
return reverse("post-detail", kwargs={"slug": self.object.slug})
def get_context_data(self, **kwargs):
context = super(PostDetailView, self).get_context_data(**kwargs)
context["form"] = self.get_form()
return context
def post(self, request, …Run Code Online (Sandbox Code Playgroud) 我有一个类型的变量,interface{}我想使用反射更改字段的值。我该怎么做?interface{}由于其他要求,变量必须属于类型。如果变量不是interface{}所有工作类型,否则代码抛出
reflect: call of reflect.Value.FieldByName on interface Value
Run Code Online (Sandbox Code Playgroud)
我的代码
package main
import (
"fmt"
"reflect"
)
func main() {
a := struct {
Name string
}{}
// works
reflect.ValueOf(&a).Elem().FieldByName("Name").SetString("Hello")
fmt.Printf("%#v\n", a)
var b interface{}
b = struct {
Name string
}{}
// panics
reflect.ValueOf(&b).Elem().FieldByName("Name").SetString("Hello")
fmt.Printf("%#v\n", b)
}
Run Code Online (Sandbox Code Playgroud) 我想使用 Go 创建一个用户身份验证系统,但我一直无法登录帐户。我使用 bcrypt 来散列密码而不是将其保存到数据库 (MySQL)。问题显示何时我想将其与插入的密码进行比较。我有这个错误:hashedSecret too short to be a bcrypted password。我不知道我做错了什么。这是我的代码:
models.go
type User struct {
ID string `json:"id"`
Username string `json:"username"`
Password string `json:"password"`
IsAdmin bool `json:"is_admin"`
}
Run Code Online (Sandbox Code Playgroud)
user-routes.go (login func)
err := db.QueryRow("SELECT Password FROM Users WHERE Username = ?", user.Username).Scan(&storedPass)
if err != nil {
log.Fatal(err)
}
// hashed password
fmt.Println(storedPass, []byte(storedPass))
err = bcrypt.CompareHashAndPassword([]byte(storedPass), []byte(user.Password))
if err != nil {
// Here is error
fmt.Println(err.Error())
}
Run Code Online (Sandbox Code Playgroud)
user-routes.go (register func)
stmt, err := …Run Code Online (Sandbox Code Playgroud)