我无法弄清楚如何将appBar的自动后退按钮更改为其他颜色.它在脚手架下,我试图研究它,但我无法绕过它.
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.white,
title: Image.asset(
'images/.jpg',
fit: BoxFit.fill,
),
centerTitle: true,
),
Run Code Online (Sandbox Code Playgroud) 我的Centos 7服务器正在运行apache 2.4.6,并且正在使用mod_wsgi提供Django webapp。我的问题是我无法从另一台计算机的浏览器访问服务器URL。我没有从apache及其启动和运行中获得任何错误。我已经在http.conf文件中将错误日志设置为“调试”,但仍然没有错误。我知道服务器实际上通过ping连接到Internet,我知道它正在通过运行在端口:80上侦听
netstat -tunlp | grep 80。
tcp 0 0 0.0.0.0:60080 0.0.0.0:* LISTEN 3841/name-gu
tcp6 0 0 :::80 :::* LISTEN 13882/httpd
Run Code Online (Sandbox Code Playgroud)
我也暂时关闭了服务器端的所有防火墙
我的settings.py在下面有url,ip地址和localhost ALLOWED_HOSTS
我该如何调试此问题,以便检查错误?
日志:让我知道是否需要tcpdump -nn tcp port 80在服务器计算机curl -v myurl.com上运行更多信息,然后在我的计算机上运行并在服务器上获取以下结果:
13:11:52.225076 IP 10.0.24.67.40658 > 10.0.26.20.80: Flags [S], seq 3327782620, win 29200, options [mss 1460,sackOK,TS val 36451589 ecr 0,nop,wscale 7], length 0
13:11:52.225355 IP 10.0.26.20.80 > 10.0.24.67.40658: Flags [S.], seq 1689726058, ack 3327782621, win 28960, options [mss 1460,sackOK,TS val 73904848 ecr …Run Code Online (Sandbox Code Playgroud) 我正在查看此(https://github.com/tekartik/sqflite/blob/master/doc/opening_asset_db.md)以填充已格式化且需要应用程序的数据,仅用于读取功能.
因此,当我们已经拥有外部csv文件中的所有信息时,我对创建sqlite数据库的理解是,在我的应用程序中的.dart文件中创建类模型,例如
class User {
int id;
String _firstName;
String _lastName;
String _dob;
User(this._firstName, this._lastName, this._dob);
User.map(dynamic obj) {
this._firstName = obj["firstname"];
this._lastName = obj["lastname"];
this._dob = obj["dob"];
}
String get firstName => _firstName;
String get lastName => _lastName;
String get dob => _dob;
Map<String, dynamic> toMap() {
var map = new Map<String, dynamic>();
map["firstname"] = _firstName;
map["lastname"] = _lastName;
map["dob"] = _dob;
return map;
}
void setUserId(int id) {
this.id = id;
}
}
Run Code Online (Sandbox Code Playgroud)
然后,如果我有一个csv文件,其中包含所有用户信息(具有与用户类对应的值),我可以使用数据库资产来填充信息,然后在flutter app中调用它?我意识到可能有很多方法可以解决这个问题,但是.db文件存储到底是什么,以及它是如何格式化的?我可以在这个.db文件中实现.csv文件吗?
版本列表:
Centos 7 --- django 2.1.7 --- Apache 2.4.6 --- Python 3.6
检查EDIT 5以获取最新的错误日志
在此处遵循本教程:https : //www.digitalocean.com/community/tutorials/how-to-serve-django-applications-with-apache-and-mod_wsgi-on-centos-7
我能够运行sudo systemctl start httpd,当我转到 url 时,我收到内部服务器错误(底部的日志)
我的文件结构
home
??? user
??? projects
??? myapp
??? app
? ??? <All Code for Webapp including static dir>
??? env (virtualenv)
??? manage.py
??? new
? ??? settings.py
? ??? urls.py
? ??? wsgi.py
??? requirements.txt
Run Code Online (Sandbox Code Playgroud)
我希望有人能在我的 httpd 文件夹下的 django.conf 中看到错误。希望这些是我正在寻找的终点
编辑:该文件位于:/etc/httpd/conf.d/django.conf
django.conf
Alias /static /home/user/projects/myapp/app/static
<Directory /home/user/projects/myapp/app/static>
Require all granted …Run Code Online (Sandbox Code Playgroud) 我使用此网站https://flutter.io/android-release/按照步骤进行了扑动部署
当我运行flutter build apk时出现此错误
Execution failed for task ':app:validateSigningRelease'.
> Keystore file filepath/key.jks> not found for signing config 'release'.
Run Code Online (Sandbox Code Playgroud)
我想念的是什么,所以它会签下释放的?
当我改线signingConfig signingConfigs.release到signingConfig signingConfigs.debug在我的build.gradle它的工作原理,但需要将其发布标志
我的build.gradle
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
Run Code Online (Sandbox Code Playgroud)
文件夹结构:
Project
-Android
|-- .gradle
|-- app
| |-- src
| | `-- main
| | |-- java
| | …Run Code Online (Sandbox Code Playgroud) 我得到了一个这样的清单
a = [1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)
该列表与存储在我们称为 Books 的 django 模型中的 id 相匹配。
我正在尝试返回列表中带有 id 的图书查询集。我正在考虑使用 Q 对象并通过做这样的事情来抓住它们
Books.objects.filter(Q(id = 1) | Q(id=2) | Q(id=3) | Q(id=4))
现在我会像这样使用索引:
Books.objects.filter(Q(id = a[0]) | Q(id=a[1]) | Q(id=a[2]) | Q(id=a[3]))
但是,这些列表的长度将在 30 左右变化,并且对索引进行硬编码将不起作用,并且对查询进行硬编码将无法满足不同长度的列表。
可以走这条路吗?如果是这样,我如何才能完成返回 ID 与列表匹配的书籍?
我正在看我在startflutter.com上找到的此模板,完整代码可以在下面看到
我尝试将自己的图片插入圆圈,似乎没有办法将图片完全放入框中(它总是被裁剪)
@override
Widget build(BuildContext context) {
final alucard = Hero(
tag: 'hero',
child: Padding(
padding: EdgeInsets.all(16.0),
child: CircleAvatar(
radius: 72.0,
backgroundColor: Colors.transparent,
backgroundImage: AssetImage('assets/alucard.jpg'),
),
),
);
Run Code Online (Sandbox Code Playgroud)
我想像这样在容器中插入图像
@override
Widget build(BuildContext context) {
final alucard = Container(
decoration: new BoxDecoration(
image: new DecorationImage(
image: new AssetImage("images/logo.png"),
fit: BoxFit.fill,
)
)
);
Run Code Online (Sandbox Code Playgroud)
但这是行不通的,不会出现,这是怎么了?
这是整个代码页面...
import 'package:flutter/material.dart';
class HomePage extends StatelessWidget {
static String tag = 'home-page';
@override
Widget build(BuildContext context) {
final alucard = Hero(
tag: 'hero',
child: Padding(
padding: …Run Code Online (Sandbox Code Playgroud) 作为序言,我对所有这些都不熟悉,不需要一步一步的信息,只是看看有什么可能。
我一直在尝试将我的 flutter/dart 应用程序连接到 mysql 后端
我使用 sqljocky 连接到它,想知道用户是否可以从它下载数据以供离线使用。我阅读了 NSUserDefaults(用于 ios)和 Shared_Preferences(用于 android)以在应用程序上存储持久和简单的数据,并想知道这是否是继续的正确途径。
我目前正在从api中删除一个列表,并根据严重性级别更改名称
现在我的代码是这样做的
priname = list((item['fields']['priority']['name']) for item in data['issues'])
priname = [w.replace('Trivial', 'Low')
.replace('Minor', 'Low')
.replace('Moderate', 'Medium')
.replace('Major', 'High')
.replace('Critical', 'High')
.replace('Blocker', 'Emergency')for w in priname]
Run Code Online (Sandbox Code Playgroud)
所以我只是将列表中的字符串替换为概括内容的关键字.当我对更大的列表执行此操作时,需要永远返回更改的列表,我意识到这意味着这根本不是一种有效的方法.
任何人都可以指出我可以简化这个发现和替换的方向吗?
编辑:
Priname=[
'Critical',
'Moderate',
'Major',
'Moderate',
'Moderate',
'Critical',
'Moderate',
'Moderate',
'Moderate',
'Blocker',
'Critical',
'Moderate',
'Moderate',
'Major',
'Moderate',
'Critical'
]
Run Code Online (Sandbox Code Playgroud)