我正在努力使用mongoimport从CSV文件导入Mongodb的ObjectId:
我尝试了我能想到的每种组合和转义方法,但无法从CSV正确导入ObjectId.
首先,我尝试将从MongoDB导出的确切内容导入CSV.我使用的是MongoDB 2.2.1.
我刚创建了两个集合,并在另一个文档中引用了一个文档的_id:
use yourdb
db.createCollection("student")
db.createCollection("class")
db.student.insert({"name":"Peter"})
db.student.find() returns { "_id" : ObjectId("5143af326d44e1ceb372121d"), "name" : "Peter" }
db.class.insert({"student_id": ObjectId("5143af326d44e1ceb372121d"),"name":"II-4"})
Run Code Online (Sandbox Code Playgroud)
然后我在shell中使用了mongoexport命令:
mongoexport -h localhost:3002 -d yourdb -c classes --csv -f student_id,name > export.txt
Run Code Online (Sandbox Code Playgroud)
生成的CSV如下所示:
student_id,name
ObjectID(5143af326d44e1ceb372121d),"II-4"
Run Code Online (Sandbox Code Playgroud)
然后我使用以下方法导入生成的CSV:
mongoimport -h localhost:3002 -d yourdb -c class --type csv --file export.txt --headerline
Run Code Online (Sandbox Code Playgroud)
Quering类集合现在返回:
db.class.find()
{ "_id" : ObjectId("5143afc66d44e1ceb372121e"), "student_id" : ObjectId("5143af326d44e1ceb372121d"), "name" : "II-4" }
{ "_id" : ObjectId("5143b44788df173ba096550e"), "student_id" : "ObjectID(5143af326d44e1ceb372121d)", "name" : "II-4" }
Run Code Online (Sandbox Code Playgroud)
您可以注意到第二个文档中的student_id字段实际上是一个字符串而不是MongoDB ObjectId.
我错了什么或者Mongo无法导入它自己导出的CSV?
在我的组件的render方法中,我将作为父级的antd Modal组件和作为子级的antd Form组件:
render() {
const myForm = Form.create()(AddNewItemForm);
...
return (
...
<Modal
title="Create new item"
visible={this.state.visible}
onOk={this.handleOk}
onCancel={this.handleCancel}
wrapClassName="vertical-center-modal"
okText="Save new item"
width="600"
>
<myForm />
</Modal>
...
Run Code Online (Sandbox Code Playgroud)
如何通过单击"模态保存"按钮提交表单?
假设我在Meteor中有一个简单的product_orders集合(_id,user_id,user_name,product_name,price_unit,quantity),我想在表中显示单个用户的所有订单,其中每行应包含:
user_name, product_name, quantity, price_unit, quantity, price_total (price_unit * quantity)
Run Code Online (Sandbox Code Playgroud)
此外,我想显示所有用户订单的总计.
我没有看到在Handlebars.js模板中执行此操作的简单方法,因为Handlebars似乎不支持简单的数学运算.我可以轻松地将product_order的光标返回到我的模板,但是看不到简单的方法来计算模板中的price_total和总计.
我正在考虑创建某种类型的模板助手,但不确定这是否是正确的方向.这个问题看起来必须有一个简单而优雅的解决方案.
我正在使用Meteor 0.5.2并试图解决我认为是一个应该有一个简单解决方案的明显模式.
我有一个模板,应该在每个模板实例中返回不同的数据块.
例如 - 我有一个显示电视节目的模板 - 按秀节目.
然后我需要显示具有不同数据的同一模板的两个实例 - 一个用于过去的节目,一个用于即将到来的节目.
所以我有一个电视节目模板:
<template name="tv_program">
{{#each shows}}
...
</template>
Run Code Online (Sandbox Code Playgroud)
理想情况下,我想做类似的事情:
{{> tv_program past_shows}}
...
{{> tv_program upcoming_shows}}
Run Code Online (Sandbox Code Playgroud)
将参数传递给tv_program模板实例,我可以从JavaScript中读取并调整mongo查询.
目前我已经复制/粘贴了我的模板/ js代码并调整了mongo查询,但必须有更好的方法.
我查看了带有参数的partials/helpers,但这似乎不是我问题的解决方案.
谢谢,弗拉基米尔
当我使用 AWS 作为提供者部署我的无服务器框架项目时,我得到:
您无权访问此资源。- 请联系支持人员并提供此标识符以引用此问题 BLAHBLAH
我登录到无服务器框架 serverless login
我的 serverless.yaml:
org: vladimirorg
app: vladimirapp
service: backend-rest
provider:
name: aws
runtime: nodejs12.x
apiGateway: {
shouldStartNameWithService: true
}
environment:
DYNAMODB_TABLE: ${self:service}-${opt:stage, self:provider.stage}
DYNAMODB_LOCAL_PORT: 9000
iamRoleStatements:
- Effect: Allow
Action:
- dynamodb:Query
- dynamodb:Scan
- dynamodb:GetItem
- dynamodb:PutItem
- dynamodb:UpdateItem
- dynamodb:DeleteItem
Resource: "arn:aws:dynamodb:#{AWS::Region}:#{AWS::AccountId}:table/${self:provider.environment.DYNAMODB_TABLE}"
functions:
create:
handler: src/handlers/create.create
events:
- http:
path: todos
method: post
cors: true
request:
schema:
application/json: ${file(src/schemas/create.json)}
...
Run Code Online (Sandbox Code Playgroud) 如何在Material UI v1(当前为v1-beta)中创建具有滚动溢出的表?在MUI文档中的组件演示中,没有这样的示例.
我有几种颜色(绿色,黄色,蓝色等)实现芯片,默认情况下MUI Chip带有灰色悬停/主动/焦点CSS样式.我需要在MUI芯片组件中消除这种悬停/活动/聚焦灰色背景颜色.所以我再次不想用另一种颜色替换灰色,而是完全消除以下CSS样式:
clickable: {
// Remove grey highlight
WebkitTapHighlightColor: theme.palette.common.transparent,
cursor: 'pointer',
'&:hover, &:focus': {
backgroundColor: emphasize(backgroundColor, 0.08),
},
'&:active': {
boxShadow: theme.shadows[1],
backgroundColor: emphasize(backgroundColor, 0.12),
},
},
deletable: {
'&:focus': {
backgroundColor: emphasize(backgroundColor, 0.08),
},
},
Run Code Online (Sandbox Code Playgroud)
最后,这可以通过覆盖所需的所有颜色的芯片组件来完成,但必须有更好的方法.