我有
var Schemas = {};
Meteor.isClient && Template.registerHelper("Schemas", Schemas);
Schemas.Person = new SimpleSchema({
fullName: {
type: String,
index: 1,
optional: true,
},
email: {
type: String,
optional: true
},
address: {
type: String,
optional: true
},
isActive: {
type: Boolean,
},
age: {
type: Number,
optional: true
}
});
Run Code Online (Sandbox Code Playgroud)
在一个文件和
var Collections = {};
Meteor.isClient && Template.registerHelper("Collections", Collections);
Persons = Collections.Persons = new Mongo.Collection("Persons");
Persons.attachSchema(Schemas.Person);
Run Code Online (Sandbox Code Playgroud)
在另一个文件中.
我收到了错误ReferenceError: Schemas is not defined
.很明显,我必须Schemas
在我的collections.js
文件中定义而不是将它们分开.但Meteor如何在单独的文件中使用代码?我可以访问一些对象和变量,而其他对象和变量是无法访问的.
我经常检查数字变量number
是否有值,if number
但有时数字可能为零.所以我解决了这个问题if number or number == 0
.
我能以更聪明的方式做到这一点吗?我认为分别检查值是否为零有点难看.
我想我可以检查值是否为数字
def is_number(s):
try:
int(s)
return True
except ValueError:
return False
Run Code Online (Sandbox Code Playgroud)
但是我仍然需要检查if number and is_number(number)
.
我在bootstrap 3中有一张表
<table class="table table-bordered table-condensed">
<tbody>
<tr>
<td><input type="text" class="form-control" /></td>
<td><input type="text" class="form-control" /></td>
<td><input type="text" class="form-control" /></td>
<td><input type="text" class="form-control" /></td>
<td><input type="text" class="form-control" /></td>
<td><input type="text" class="form-control" /></td>
</tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
我可以使输入字段看起来像普通单元格吗?我希望输入字段填写整个单元格(没有输入边距也没有表格单元格填充).就像一个Excel电子表格,我有很多单元格,可以在每个单元格中写入.
我用过
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<button type="button" id="button">Click</button>
<pre id="output">Not Loading...</pre>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.17.0/babel.min.js"></script>
<script type="text/babel">
document.addEventListener('DOMContentLoaded', function () {
const button = document.getElementById('button');
const output = document.getElementById('output');
output.textContent = 'Loading...';
addEventListener('click', function () {
output.textContent = 'Done';
});
});
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
但似乎里面的代码document.addEventListener('DOMContentLoaded', function () {});
没有加载.
如果我从我的代码中删除它,它突然工作.
我有
Page.findById(pageId).then(page => {
const pageId = page.id;
..
});
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果没有给出页面ID,它应该只是在给定一些条件的情况下获取第一个可用页面,这是由完成的
Page.findOne({}).then(page => {
const pageId = page.id;
..
});
Run Code Online (Sandbox Code Playgroud)
但如果没有找到任何页面,它应该创建一个新页面并使用它,这是完成的
Page.create({}).then(page => {
const pageId = page.id;
..
});
Run Code Online (Sandbox Code Playgroud)
但是如何将所有这些组合成尽可能少的线?
我内心有很多逻辑
page => { ... }
Run Code Online (Sandbox Code Playgroud)
所以我非常想做到这一点,所以我可以避免这样做
if (pageId) {
Page.findById(pageId).then(page => {
const pageId = page.id;
..
});
} else {
Page.findOne({}).then(page => {
if (page) {
const pageId = page.id;
..
} else {
Page.create({}).then(page => {
const pageId = page.id;
..
});
}
});
}
Run Code Online (Sandbox Code Playgroud)
我想我也许可以用类似的东西为模式分配一个静态 …
我有一个简单的棋盘在JPanel
与GridLayout(8,8)
作为布局管理器.
我正在尝试为字段的列名和行号添加面板.
现在我已经创建了另一个面板BorderLayout
作为布局管理器,在这个面板中我添加了板BorderLayout.CENTER
.旁边的板本身我添加了一个面板GridLayout(0,8)
中BorderLayout.SOUTH
和面板GridLayout(8,0)
中BorderLayout.WEST
.行数完全放在电路板旁边,因为左侧JPanel中的行数与电路板中的行数相匹配,但列名称(A,B,C,D,E,F,G,H)在由于JPanel的原因,板下的JPanel放置不正确BorderLayout.WEST
.
如何制作带侧板的合适棋盘以显示场地编号/名称?
我已经尝试将南面板的布局设置为GridLayout(0,9)
第一个字段为空,但左面板的宽度不等于电路板中的每个字段,因此这不是一个好的解决方法.
我正在开发一个React Native应用程序.
我想保存登录人员的用户ID,然后检查用户是否在每个组件中登录.
所以我要找的是饼干,会话或全球状态.
我已经读过我应该使用Redux,但这似乎过于复杂,并且很难使它工作react-navigation
.它迫使我为几乎所有东西定义动作和缩减器,尽管我唯一想要的是能够访问所有组件中的单个全局状态/变量.
有没有其他选择,还是我应该重新构建我的整个应用程序以使用Redux?
如何在React Native中检测整个屏幕上的左侧滑动?
是否有必要使用PanResponder或者它可以更轻松一点吗?
我想在使用Redux的React应用程序中显示一些新闻.
问题是我想显示个别日期的新闻,我想分页新闻.
在我的API我打印
{
pagination: {
count: 1000,
size: 10,
page: 1,
pages: 100
},
news: [
..
]
}
Run Code Online (Sandbox Code Playgroud)
我知道如何进行简单的分页,但如果我希望能够在我的应用程序中显示不同日期的新闻,我不知道API应该如何工作.
到目前为止(没有日期),我刚刚保留了一个状态news
并pagination
在我的Redux reducer中,然后检查页码是否等于总页数以确定是否应该尝试加载更多新闻.
但现在我可能有很多不同的日期,我想在Redux商店保留所有新闻,我不知道如何构建它.
我可以按原样保留我的API,因为使用GET参数进行过滤?date=15-09-2017
只会减少API结果中的新闻数量.
但是仍然可以将所有新闻保存news
在我的reducer 中的变量数组中,或者我是否必须将其构造成类似的东西
news: {
'15-09-2017': {
news: [...],
pagination: {}
},
...
}
Run Code Online (Sandbox Code Playgroud)
为了跟踪每个日期的分页?
我有三个型号
class ModelA(models.Model):
name = CharField(max_length=100)
class ModelB(models.Model):
modela = ForeignKey(ModelA)
class ModelC(models.Model):
modelb = ForeignKey(ModelB)
amount = IntegerField()
Run Code Online (Sandbox Code Playgroud)
我可以得到输出
name, number of model c objects
==============
Some name, 312
Another name, 17
Run Code Online (Sandbox Code Playgroud)
使用queryset
ModelA.objects.all().prefetch_related('modelb_set', 'groupb_set__modelc_set')
Run Code Online (Sandbox Code Playgroud)
和模板
{% for modela in modela_list %}
{% for modelb in modela.modelb_set.all %}
{{ modelb }}, {{ modelb.modelc_set.count }}
{% endfor %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
我没有计算连接到每个ModelB对象的ModelC对象的数量,而是想要对ModelC中的amount字段求和.
我不知道如何结合prefetch_related
并annotate
在我的查询集,但它必须是这样的
(ModelA.objects.all()
.prefetch_related('modelb_set', 'groupb_set__modelc_set')
.annotate(total_amount=Sum('modelc_set__amount')))
Run Code Online (Sandbox Code Playgroud) django django-templates django-models django-queryset django-views
javascript ×6
node.js ×3
react-native ×3
reactjs ×3
react-redux ×2
redux ×2
babeljs ×1
chess ×1
css ×1
django ×1
django-views ×1
grid-layout ×1
html ×1
html-table ×1
java ×1
meteor ×1
mongodb ×1
mongoose ×1
python ×1
python-3.x ×1
scope ×1
swing ×1