我的Python 3.3项目中有一个名为/ models的目录.
从我,main.py我只是做一个
from models import *
Run Code Online (Sandbox Code Playgroud)
在我的__init__.py:
__all__ = ["Engine","EngineModule","Finding","Mapping","Rule","RuleSet"]
from models.engine import Engine,EngineModule
from models.finding import Finding
from models.mapping import Mapping
from models.rule import Rule
from models.ruleset import RuleSet
Run Code Online (Sandbox Code Playgroud)
这适用于我的应用程序.
我有一个模型依赖于其他模型,使得我engine.py我需要进口finding.py的engine.py.当我做:from finding import Finding
我收到了错误No Such Module exists.
如何从同一模块/目录中的文件A导入B类?
编辑1:
显然我可以做到:from .finding import Finding这是有效的.下面的答案也反映了这一点,所以我认为这是合理的正确.我已经修复了我的文件命名并将测试移到了另一个目录,现在我运行得很顺利.谢谢!
嘿伙计.我有一个相当大的商业项目(所以付费许可总是一个选项),正在进入Windows领域,我正在计划用WMI做很多轮询.这是一个Java 1.6客户端应用程序.是否有任何好的资源或书籍让我开始在java中完成这个?我觉得我的.NET fu非常强大,但我经常不知道从哪里开始在Java中完成相同的任务.
谢谢!
是否可以从Angular Controller加载普通的旧JS或AMD模块?我之前使用过RequireJS.
我之前在一个相当大的项目上使用过AngularJS和RequireJS.我正在开发一个基于MEAN Stack种子的新项目,这不使用requireJS.
我不是很清楚,但Angular有一个加载模块的系统 - 我可以从我的角度控制器中加载一段特定的javascript吗?
有没有办法修改我的module()声明以包含其他常规javascript文件?
谢谢!
编辑:为了对我正在做的事情有一点了解,我有一个编辑几种不同形式的页面.其中每个都作为"表单"保存到我的数据库中.根据表单的类型,不同的字典值将映射到不同子视图中的不同字段.我的一些表格有例如下拉列表或输入列表.这些是不同的,但关于'表单'的其他所有内容都是以通用方式处理的.
所以我有这个单一的表单控制器来处理一堆不同的形式,我对结果非常满意.主要问题来自于每个表单都有一组单独的数据,我希望避免加载,除非我需要.
我可以通过检查驱动我的ng-include(加载子表单)的下拉列表来检查我正在加载哪个表单.
在短期内,我刚刚加载了所有内容并在我的范围内创建了名称空间来区分.
例如$ scope.form1和$ scope.form2,用于特定表单的数据/规则.我很快就不会加载我不需要的js.
编辑2: http ://jsfiddle.net/HB7LU/1320/
function MyCtrl($scope) {
$scope.doSomething = function()
{
//I'm used to wrapping with e.g require('jquery..... here, can I do the same thing with angular?
alert(" I need to run a jquery function here...");
var xml = $(someblock);
};
}
Run Code Online (Sandbox Code Playgroud)
我已经准备好了我正在谈论的内容.我想根据控制器中的某些路径加载任意JS,并且只在我需要时才加载.
基本上我有一些更大的命名空间我想加载,这取决于所选择的众多选项中的一个,并且加载它们将是昂贵的.
我有一个web服务,它将从经过身份验证的计算机上获取一些输入作为XML(这是我与其他软件集成的网络管理系统)并执行带有一些XML数据作为参数的shell脚本.
在Java(/ Linux)中,逃避shell命令以确保某人无法将恶意参数传递给我的Web服务的最佳方法是什么?
基本上在一个极其简化的例子中,我在via WS中输入了一些内容
<foo>
<bar>ABCDEF</bar>
</foo>
then running somescript.pl <<data in <bar> field>> here
Run Code Online (Sandbox Code Playgroud)
我需要确保这不能用于执行任意shell命令等.
谢谢!
我有一个脚本试图从gparted获取信息块.
我的数据看起来像:
Disk /dev/sda: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 316MB 315MB primary ext4 boot
2 316MB 38.7GB 38.4GB primary ext4
3 38.7GB 42.9GB 4228MB primary linux-swap(v1)
log4net.xml
Model: VMware Virtual disk (scsi)
Disk /dev/sdb: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 316MB 315MB primary ext4 boot
5 316MB 38.7GB 38.4GB primary ext4
6 38.7GB 42.9GB 4228MB …Run Code Online (Sandbox Code Playgroud) 我正在使用一个使用一些属性标记的框架.这将在MVC项目中使用,并且每次我在视图中查看特定记录时都会发生(例如/ Details/5)
我想知道是否有更好/更有效的方法来做这个或一个好的最佳实践示例.
无论如何,我有几个属性,例如:
[Foo("someValueHere")]
String Name {get;set;}
[Bar("SomeOtherValue"]
String Address {get;set;}
Run Code Online (Sandbox Code Playgroud)
寻找这些属性/对其价值采取行动的最有效方式/最佳做法是什么?
我目前正在做这样的事情:
[System.AttributeUsage(AttributeTargets.Property)]
class FooAttribute : Attribute
{
public string Target { get; set; }
public FooAttribute(string target)
{
Target = target;
}
}
Run Code Online (Sandbox Code Playgroud)
在我的方法中,我对这些属性采取行动(简化示例!):
public static void DoSomething(object source)
{
//is it faster if I make this a generic function and get the tpe from T?
Type sourceType = source.GetType();
//get all of the properties marked up with a foo attribute
var fooProperties = sourceType
.GetProperties()
.Where(p …Run Code Online (Sandbox Code Playgroud) 这可能会因为模棱两可而被贬低,但我时间紧张,并希望有更多经验的人可以跳到这里并给我一个正确方向的点头.
我在ASP.NET MVC(3)中与一些开发人员一起开发了几个中型业务应用程序.我和团队需要生成一个Java EE Web应用程序.我希望尽可能保持一致 - 我过去使用过CakePHP,并注意到在ASP.NET MVC Stuff之后进入它是一件轻而易举的事.
什么是最好/最相似的Java MVC框架?在过去的几个月里,很多人都花了很多时间来学习所有新的MVC3/Razor,这些东西来自更多的"经典ASP"或C/C++设计.我真的希望尽可能保持一致,以避免额外的混淆.
谢谢!
编辑:我想我应该问你的建议,如果一个特定的IDE比其他IDE有更好的集成,我很好奇!
我有一个Model,它接受一个可以包含任何属性集的对象.
我想知道我是否可以绑定到每个对象属性,而不提前知道属性值.
以此为例
var object1 =
{
Name: '1',
Identifier: '12345',
Password: 'password'
}
var object2 =
{
Name: '2',
Identifier: 'object_two'
}
var objects = [object1,object2];
Run Code Online (Sandbox Code Playgroud)
我的对象可以具有不同且唯一的属性,我想将其绑定到表单.
我知道我可以使用for(对象中的var属性)并遍历每个对象 - 但我可以使用AngularJS绑定做同样的事情吗?
我想做一些事情:
<ul><li ng-repeat="attrib in obj">
{{attrib}}
</li</ul>
Run Code Online (Sandbox Code Playgroud)
我基本上想要使用这样的东西绑定:
<p ng-repeat="(key,value) in obj">
{{key}} : <input ng-model="obj[key]" />
</p>
Run Code Online (Sandbox Code Playgroud)
这是有效的,除了我一次只能输入一个字符 - 有趣.
以下小提琴完成了我需要做的事情,而只是稍微冗长一点.
function ctrl($scope) {
$scope.objects =
[
[
{Name: 'Name:', Value: 'Joe'},
{Name: 'Identification', Value: '1'},
{Name: 'Password', Value: 'secret'}
],
[
{Name: 'Name:', …Run Code Online (Sandbox Code Playgroud) 我正在尝试设置一个简单的node.js代理来将帖子传递给Web服务(CSW in this isntance).
我在请求体中发布XML,并指定text/xml. - 服务需要这些.
我在req.rawBody var中得到原始的xml文本并且它工作正常,但我似乎无法正确地重新提交它.
我的方法看起来像:
app.post('/csw*', function(req, res){
console.log("Making request to:" + geobusOptions.host + "With query params: " + req.rawBody);
request.post(
{url:'http://192.168.0.100/csw',
body : req.rawBody,
'Content-Type': 'text/xml'
},
function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body)
}
}
);
});
Run Code Online (Sandbox Code Playgroud)
我只想在POST中使用content-type text/xml提交一个字符串.但我似乎无法实现这一目标!
我正在使用'request'库@ https://github.com/mikeal/request
这非常有效:
request.post(
{url:'http://192.168.0.100/csw',
body : req.rawBody,
headers: {'Content-Type': 'text/xml'}
},
function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) …Run Code Online (Sandbox Code Playgroud) 我有一个被安排到层次结构中的类,例如:
class TestContainer
{
... bla bla bla...
public Virtual Item Items {get;set;}
}
Class Item
{
[Key]
public int ID {get;set;}
public string PropA {get;set;}
public string PropB {get;set;}
[InverseProperty("Parent")]
public virtual ICollection<Item> Children { get; set; }
[InverseProperty("Contents")]
public virtual Item Parent { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
所以,我有一个更新方法,允许用户上传更新的子集.
我一开始并没有意识到但删除我的容器TestContainer并没有删除这些项目.
好的,没问题吧?
我插入了以下功能(这可能非常难看,但我仍处于原型设计阶段)
private void DeleteItems(TestContainer existingContainer)
{
//setup a flat list for deletion
List<Item> trashCan = new List<Item>();
//delete the old CI's from the database
BuildDeletionList(existingContainer.Items, ref trashCan);
foreach …Run Code Online (Sandbox Code Playgroud) 我在Model类中有一个属性,如:
/// <summary>
/// A list of line items in the receipt
/// </summary>
public ICollection<ReceiptItem> Items { get; set; }
Run Code Online (Sandbox Code Playgroud)
有没有什么办法可以标记这个属性来验证集合必须有1个或更多成员?我试图避免在ModelState.IsValid之外进行手动验证函数调用
我有一个带有大数据源和分页的Kendo UI Grid.
我有一个事件触发我知道我想要选择的基础数据项,但我不确定如何以编程方式页面/选择网格中的此项.如果该项目不在当前网格页面上,则当数据不在当前页面上时,我无法使用datasource.view()来查看.
有谁知道我如何通过其底层数据源对象选择项目?
我有类似的情况,我在@的地方:http: //jsfiddle.net/Sbb5Z/1050/ 我可以使用以下内容获取数据项:
change: function (e) {
var selectedRows = this.select();
var dataItem = this.dataItem(selectedRows[0]);
}
Run Code Online (Sandbox Code Playgroud)
但后来我不知道如何选择其他网格中的同一行.
基本上在一个网格的选择事件中,我想去另一个网格中选择相同的项目.这些数据源不同,因为它们具有不同的页面设置,但它是相同的底层数据数组.
我在目标网格中有数据项 - 但我不知道如何在目标网格中分页/选择它.
编辑: 我提出的最好的软件是创建一个与原始参数相同的数据源,并以编程方式对其进行分页,直到找到我要查找的内容.当然必须有更好的方法吗?
来自实体框架背景我可以将我的ORM结果转换为包含完整后端模型数据子集的类.
我有一个JAX-RS REST服务,我通常会返回类似的东西
MyEntity result = em.createQuery(select e from MyEntity e ... blah blah blah).
Run Code Online (Sandbox Code Playgroud)
我知道我可以这样做:
Object result = em.createQuery(select e.Title, e.Version, e.Date from MyEntity e... blah blah blah).
Run Code Online (Sandbox Code Playgroud)
但是,我可以:将我的结果转换为单独的类,或者在我的createquery中命名我的字段,以便在返回我的JSON时命名它们吗?
例如在.Net Land我可以做类似......
(select new {Title = e.Title, Version = e.Version})
Run Code Online (Sandbox Code Playgroud)
然后将其转换为另一种类型.我尝试使用typedquery和cast但是我得到了"Type X与返回类型Y不兼容"类型错误.
我的目标是返回我的信息的特定子集(视图模型/ DTO),以便在特定场景中使用.
例如,我的模型非常庞大,我不希望每次都返回大量数据.
java ×3
javascript ×3
.net ×2
angularjs ×2
asp.net-mvc ×2
c# ×2
annotations ×1
attributes ×1
bash ×1
escaping ×1
express ×1
jpa ×1
kendo-grid ×1
kendo-ui ×1
lazy-loading ×1
node.js ×1
python ×1
python-3.x ×1
reflection ×1
regex ×1
request ×1
shell ×1
windows ×1
wmi ×1