有人告诉我,在数据模型中有循环是不好的设计.我曾经多次听过这个,但没注意到.例如,您有实体User,Project,Activity.项目由用户拥有,因此我们拥有从用户到项目的一对多关系.可以将活动分配给单个用户,这是从用户到活动的另一个一对多关系.当然,项目由一组活动定义,这是从项目到活动的另一个一对多关系.因此形成环.
我问这个家伙为什么设计不好但他告诉我他也不知道,他也被告知,猴子学习它是最好的.
我试过搜索,但我想我没有使用正确的单词,但在我看来这对于试图设计数据库的人来说应该是一个基础.
那么,任何人都可以向我指出一些有关er/db图中循环/循环的有用信息吗?
database database-design loops data-modeling entity-relationship-model
我正在学习Meteor,我发现了一些让我着迷的东西.
我可以使用import语句从JS文件加载HTML和CSS资源.
import '../imports/hello/myapp.html';
import '../imports/hello/myapp.css';
import * as myApp from '../imports/hello/myapp.js';
Run Code Online (Sandbox Code Playgroud)
这对我来说是一个惊喜所以我跑到谷歌但是在ES6规范import或Meteor的文档中找不到这种行为.
所以我的问题是:
笔记
假设您正在创建数据类型并公开其行为.
你能举一些例子说明你会在什么时候使用:
一个功能和新:
// define new data type
var CustomDataType= function(){
this.a='whatever';
this.doX= function(){/*some code*/};
}
// create a new instance of our custom data type
var obj= new customDataType();
Run Code Online (Sandbox Code Playgroud)对象文字&Object.create:
// define new data type
var customDataType = {
a: 'whatever',
doX: function(){/*some code*/}
}
// create a new instance of our custom data type
var obj= Object.create(customDataType);
Run Code Online (Sandbox Code Playgroud)构建对象的函数:
function customDataTypeFactory(options){
return {
a: 'whatever',
doX: function(){/*some code*/}
}
};
// create a new instance of our custom data …Run Code Online (Sandbox Code Playgroud)我记得在过去的某个时刻,我可以使用Chrome Dev Tools调试我的测试并进入我的未经授权的来源.
我不确定这是否是一个已更改的配置选项,但现在每当我尝试使用Chrome调试我的测试时,我只看到缩小的来源.
我需要设置一个选项来查看未经授权的来源吗?
我有一个 javascript 文件,在其中编写了一堆 jquery 函数。我有一个返回角度范围的函数。我发现如果我将同一个函数编写两次,代码仍然会执行。
function getngScope()
{
alert(2);
return angular.element($('#data-area')).scope();
}
function getngScope()
{
alert(1);
return angular.element($('#data-area')).scope();
}
Run Code Online (Sandbox Code Playgroud)
当我打电话时,getngScope()我收到“1”警报并返回范围。为什么它有这种行为?
我必须为UIView绘制自定义边框.
我已经有代码可以做到这一点,但它是在我们开始使用autolayout之前编写的.
代码基本上添加了宽度/高度= 1.0f的子图层
-(void)BordeIzquierdo:(UIColor *)pcColor cfloatTamanio:(CGFloat )pcfloatTamanio
{
CALayer* clElemento = [self layer];
CALayer *clDerecho = [CALayer layer];
clDerecho.borderColor = [UIColor darkGrayColor].CGColor;
clDerecho.borderWidth = pcfloatTamanio;
clDerecho.frame = CGRectMake(0, 1, pcfloatTamanio, self.frame.size.height);
[clDerecho setBorderColor:pcColor.CGColor];
[clElemento addSublayer:clDerecho];
}
Run Code Online (Sandbox Code Playgroud)
现在的问题是,使用自动布局,这发生在layoutSubViews之前.因此它UIView.layer.frame是(0,0; 0,0),因此它没有显示添加的子层,因为它具有宽度/高度= 0.0f
现在,我怎样才能使这个代码,而这个定义绘制转移到后执行的另一种方法viewDidLoad,如didLayoutSubviews.
我想在viewDidLoad调用之前正确应用这个样式.
CALayers吗?我见过的人加入.gitkeep,.keep在一个Git回购在空目录中的文件,我只是不明白为什么我会永远需要跟踪EN空目录.
你能举一些必要的例子吗?
有关
我正在使用Gulp与mocha/sinon/chai和jquery运行业力
我的karma.conf.js有:
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['jquery-2.1.0', 'mocha'],
// Plugin specific config
client: {
mocha: {
reporter: 'spec',
ui: 'tdd'
}
}
Run Code Online (Sandbox Code Playgroud)
并且安装的节点模块是
"devDependencies": {
"chai": "",
"gulp": "",
"gulp-jslint": "",
"gulp-notify": "",
"gulp-phpunit": "",
"gulp-util": "",
"karma": "",
"karma-chai": "",
"karma-chrome-launcher": "",
"karma-cli": "",
"karma-firefox-launcher": "",
"karma-ie-launcher": "",
"karma-jquery": "",
"karma-mocha": "",
"karma-opera-launcher": "",
"karma-safari-launcher": "",
"karma-sinon": "",
"mocha": "",
"sinon": "*"
}
Run Code Online (Sandbox Code Playgroud)
但是当我跑到业力时,我得到了这个错误
"C:\Program Files (x86)\JetBrains\IntelliJ IDEA 14.1.5\bin\runnerw.exe" "C:\Program Files\nodejs\node.exe" C:\path\to\my\project\node_modules\gulp\bin\gulp.js --color --gulpfile …Run Code Online (Sandbox Code Playgroud) 在Ruby中我可以做到:
irb(main):002:0> [1, 2, 3, *[4, 5], 6, 7]
=> [1, 2, 3, 4, 5, 6, 7]
Run Code Online (Sandbox Code Playgroud)
是否有Python等价物?Ruby语法在Python中无效:
>>> l = [1, 2, 3, *[4, 5], 6, 7]
File "<stdin>", line 1
l = [1, 2, 3, *[4, 5], 6, 7]
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
顺便说一句,我知道我可以做下面两个选项,但我更喜欢Ruby方式.
Python - 选项1
l = [1, 2, 3]
l += [4, 5]
l += [6, 7]
Run Code Online (Sandbox Code Playgroud)
Python - 选项2
l = [1, 2, 3, 6, 7]
l = l[:3] + [4, 5] + l[3:]
Run Code Online (Sandbox Code Playgroud) javascript ×2
karma-runner ×2
autolayout ×1
calayer ×1
css ×1
database ×1
debugging ×1
directory ×1
ecmascript-6 ×1
function ×1
git ×1
gruntjs ×1
html ×1
import ×1
karma-mocha ×1
list ×1
loops ×1
meteor ×1
mocha.js ×1
overwrite ×1
python ×1
types ×1
uiview ×1