问题列表 - 第8836页

如何使用ActiveRecord映射非标准表或者我应该使用其他ORM?

我正在使用一个名为(smsin,smsout和smsparts)的三个表的工具(UltraSms)

我需要在具有其他表的相同Rails应用程序中使用这些表.使用ActiveRecrod,我知道表名必须是按惯例的多个Active记录类名.有没有办法轻松地将它们映射到ActiveRecrod类,还是应该找到手动方式为它做ORM?

谢谢,

activerecord ruby-on-rails

5
推荐指数
2
解决办法
2053
查看次数

从WPF应用程序获取应用程序的目录

我找到了带有AppDomain的Windows窗体的解决方案,但是WPF Application对象的等价物是什么?

.net c# wpf

163
推荐指数
4
解决办法
18万
查看次数

在构造函数中运行可能失败的代码的不良做法?

我的问题是一个设计问题.在Python中,如果"构造函数"中的代码失败,则对象最终不会被定义.从而:

someInstance = MyClass("test123") #lets say that constructor throws an exception
someInstance.doSomething() # will fail, name someInstance not defined.
Run Code Online (Sandbox Code Playgroud)

我确实有一种情况,如果我从构造函数中删除容易出错的代码,会发生很多代码复制.基本上我的构造函数填充了一些属性(通过IO,很多可能出错),可以使用各种getter访问.如果我从构造函数中删除代码,我将有10个带有复制粘贴代码的getter:

  1. 是属性真的设置?
  2. 执行一些IO操作来填充属性
  3. 返回有问题的变量的内容

我不喜欢这样,因为我的所有getter都会包含很多代码.而不是我在中心位置,构造函数中执行我的IO操作,并填充我的所有属性.

这是一个正确的方法吗?

python oop constructor exception-handling

15
推荐指数
3
解决办法
9340
查看次数

lambda函数的范围及其参数?

我需要一个回调函数,对于一系列gui事件几乎完全相同.该函数的行为会略有不同,具体取决于调用它的事件.对我来说似乎是一个简单的案例,但我无法弄清楚lambda函数的这种奇怪的行为.

所以我在下面有以下简化代码:

def callback(msg):
    print msg

#creating a list of function handles with an iterator
funcList=[]
for m in ('do', 're', 'mi'):
    funcList.append(lambda: callback(m))
for f in funcList:
    f()

#create one at a time
funcList=[]
funcList.append(lambda: callback('do'))
funcList.append(lambda: callback('re'))
funcList.append(lambda: callback('mi'))
for f in funcList:
    f()
Run Code Online (Sandbox Code Playgroud)

此代码的输出是:

mi
mi
mi
do
re
mi
Run Code Online (Sandbox Code Playgroud)

我期望:

do
re
mi
do
re
mi
Run Code Online (Sandbox Code Playgroud)

为什么使用迭代器搞砸了?

我尝试过使用深度镜:

import copy
funcList=[]
for m in ('do', 're', 'mi'):
    funcList.append(lambda: callback(copy.deepcopy(m)))
for f in funcList:
    f()
Run Code Online (Sandbox Code Playgroud)

但这也存在同样的问题.

python lexical-closures

79
推荐指数
3
解决办法
3万
查看次数

Scala Swing事件框架 - 我在哪里添加我的反应器?

我试图抓住一个鼠标点击即可Table(这应该会导致弹出窗口显示).桌子位于a ScrollPane里面(反过来)Panel.我已经添加了对所有类的反应,但我似乎永远不会真正得到一个点击事件被捕获!

class MyPanel extends GridBagPanel {
  val gbc = new GridBagContraints( ... )

  add(new ScrollPane {
    reactions += {
      case MouseClicked(src, point, mod, clicks, pops) =>
        println("Scroll pops: " + pops)
    } 

    viewportView = new Table {
      reactions += {
        case MouseClicked(src, point, mod, clicks, pops) =>
          println("Table pops: " + pops)
      } 

      ...
    }

  }, gbc)

  reactions += {
    case MouseClicked(src, point, mod, clicks, pops) =>
      println("Panel pops: " + pops)
  } 
} …
Run Code Online (Sandbox Code Playgroud)

events scala scala-swing

6
推荐指数
1
解决办法
2734
查看次数

在javascript中是否有类似(1 == 0?"no":"yes")的内容?

在javascript中是否有类似(1 == 0?"no":"yes")的内容?

javascript

1
推荐指数
3
解决办法
340
查看次数

在域驱动设计中,当实体克隆自己将其添加到其容器中时?

例如,我们有两个域对象:Cell和Body(如人体细胞和身体).

Body类只是Cell的集合,例如

class Body
{
    IList<Cell> cells;
    public void AddCell(Cell c) { ... }
    public void RemoveCell(Cell c) { ... }
}
Run Code Online (Sandbox Code Playgroud)

Cell有一个Split方法,它在内部创建一个自己的克隆,例如

Class Cell
{
    public Cell Split()
    {
        Cell newCell = new Cell();
        // Copy this cell's properties into the new cell.
        return Cell;
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,在DDD中细胞分裂应该:

  1. 单元格将新创建的单元格添加到Body(这意味着每个Cell对象都持有对其包含主体的引用)?
  2. 或者,接收到初始用户请求的服务层是否应该调用Split,收集返回的Cell并将其添加到Body?(感觉就像使用控制器而不是域对象的更贫血的设计)
  3. 或者Body应该包含SplitCell方法?

提前致谢.

c# java domain-driven-design

5
推荐指数
1
解决办法
357
查看次数

如何将goto标签存储在数组中然后跳转到它们?

我想声明一个"jumplabels"数组.

然后我想跳到这个数组中的"jumplabel".

但我不知道该怎么做.

它应该类似于以下代码:

function()
{
    "gotolabel" s[3];
    s[0] = s0;
    s[1] = s1;
    s[2] = s2;

    s0:
    ....
    goto s[v];

    s1:
    ....
    goto s[v];

    s2:
    ....
    goto s[v];
}
Run Code Online (Sandbox Code Playgroud)

有谁知道如何执行此操作?

c c++ goto jump-table

18
推荐指数
6
解决办法
9799
查看次数

iPhone:Bonjour NSNetService IP地址和端口

请原谅我的iPhone/Objective-C新手状态!

我发现我的HTTP服务器使用NSNetServiceBrowser,但现在我只想要找到服务的IP地址和端口.

我的委托方法中有以下内容:

NSNetService* server = [serverBrowser.servers objectAtIndex:0];

NSString            *name = nil;
NSData              *address = nil;
struct sockaddr_in  *socketAddress = nil;
NSString            *ipString = nil;
int                 port;
uint                 i;
for (i = 0; i < [[server addresses] count]; i++)
{
    name = [server name];
    address = [[server addresses] objectAtIndex:i];
    socketAddress = (struct sockaddr_in *)
    [address bytes];
    ipString = [NSString stringWithFormat: @"%s",
                inet_ntoa (socketAddress->sin_addr)];
    port = socketAddress->sin_port;
    NSLog(@"Server found is %s %d",ipString,port);
}
Run Code Online (Sandbox Code Playgroud)

但是,即使调用了委托,也永远不会输入for循环.有任何想法吗?谢谢!

iphone bonjour

17
推荐指数
2
解决办法
2万
查看次数

ORM(Linq,Hibernate ......)真的有用吗?

我一直在玩一些LINQ ORM(LINQ直接用于SQL),我不得不承认我喜欢它的表达能力.对于类似实用程序的小应用程序,它也可以非常快速地运行:在某些表面上删除SQL服务器并将其设置为linq.

然而,对于较大的应用程序,DAL对我来说从来不是一个很大的问题,设置,维护,而且通常一旦设置,所有的编程都不会发生在那里......

老实说 - 我是一个ORM新手 - 问题:ORM比手工编写体面的DAL有什么大的优势?

(看起来像一个双,虽然找不到)

更新:好吧它的双倍:-)我最终自己找到了:

ORM与手动编码数据访问层

linq orm hibernate

12
推荐指数
3
解决办法
6412
查看次数