问题列表 - 第15306页

在Rails中调用自定义验证方法

我刚刚将我的轨道升级到2.3.4并且我注意到了这一点:验证:我说我有一个简单的模型公司,它有一个名字.什么都没有.我想运行自己的验证:

class Company < ActiveRecord::Base

  validate :something


  def something
    false
  end

end
Run Code Online (Sandbox Code Playgroud)

保存模型实际上适用于这种情况.如果我覆盖validate()并返回false,则会发生同样的事情.我在一个更复杂的模型中注意到这一点,我的验证返回false,但是对象仍在保存...我在一个基本上空的模型中尝试了它并应用了相同的东西.我缺少一种新的做法吗?在我的一些较旧的rails代码中似乎并非如此.

validation ruby-on-rails

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

Django ORM - 使用外键select_related和order_by

我有一个简单的音乐模式:艺术家,发行,曲目和歌曲.前3个是所有逻辑结构,而第四个(Song)是(Artist,Release,Track)的特定实例,如mp3,wav,ogg等等.

我在数据库中生成有序的歌曲列表时遇到问题.美中不足的是,双方TrackRelease有一个Artist.虽然Song.Track.Artist总是表演者的名字,但Song.Track.Release.Artist可能是表演者的名字,也可能是"各种艺术家"的编辑.我希望能够按其中一种排序,我无法弄清楚这项工作的正确方法.

这是我的架构:

class Artist(models.Model):
    name = models.CharField(max_length=512)

class Release(models.Model):
    name = models.CharField(max_length=512)
    artist = models.ForeignKey(Artist)

class Track(models.Model):
    name = models.CharField(max_length=512)
    track_number = models.IntegerField('Position of the track on its release')
    length = models.IntegerField('Length of the song in seconds')
    artist = models.ForeignKey(Artist)
    release = models.ForeignKey(Release)

class Song(models.Model):
    bitrate = models.IntegerField('Bitrate of the song in kbps')
    location = models.CharField('Permanent storage location of the file', max_length=1024)
    owner = models.ForeignKey(User)
    track = models.ForeignKey(Track)
Run Code Online (Sandbox Code Playgroud)

我的查询应该相当简单; …

django foreign-keys sql-order-by django-select-related

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

在Java中捕获Ctrl + C.

是否有可能在java命令行应用程序中捕获Ctrl+ C信号?我想在终止程序之前清理一些资源.

java command-line control-c

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

XP,Vista,Win7之间IE8行为的差异?

在不同的操作系统上,Internet Explorer 8的行为(HTML,CSS,Javascript,...)是否存在显着差异?

换句话说,一个网页在IE8 + XP,IE8 + Vista和IE8 + Win7上的工作方式是否相同,还是有一些显着的差异?

(我知道安装的插件和字体会产生影响,但目前我的范围有点偏差;假设兼容模式X-UA-Compatible: IE=8或者edge)


虽然IEBlog包含非常有用的信息,但我没有在那里找到这些数据 - 所以我假设应该没有任何区别.然而,搜索已经出现了这个(含糊的)问题:"XP上的IE8:看起来很棒!Vista上的IE8看起来很糟糕".在此期间必须检查VM中的IE8 + {XP,V,7}.

windows cross-browser internet-explorer-8

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

MSDTC问题与ADO.NET实体框架中的事务

在我们当前的项目中,我们使用ADO.NET Entity Framework作为应用程序的数据层.有些任务需要在事务中运行,因为在数据库中有很多工作要做.我正在使用TransactionScope来包围这些任务.

using (TransactionScope transactionScope = new TransactionScope(TransactionScopeOption.RequiresNew))
{
    // Do something...
    transactionScope.Complete();
}
Run Code Online (Sandbox Code Playgroud)

问题是我在使用TransactionScope时发生异常:

System.Data.EntityException:基础提供程序在Open上失败.---> System.Transactions.TransactionManagerCommunicationException:与底层事务管理器的通信失败.---> System.Runtime.InteropServices.COMException(0x80004005):错误HRESULT E_FAIL已从调用COM组件返回.

似乎此错误必须与MSDTC(Microsoft分布式事务处理协调器)执行某些操作.当我更改MSDTC的安全配置时,会抛出另一个异常:

System.Data.EntityException:基础提供程序在Open上失败.---> System.Transactions.TransactionManagerCommunicationException:已禁用分布式事务管理器(MSDTC)的网络访问.请使用组件服务管理工具在MSDTC的安全配置中启用DTC以进行网络访问.

但是,MSDTC已配置,TransactionScope将导致错误.有人知道这里出了什么问题吗?

.net msdtc transactions ado.net-entity-data-model

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

从Java中的字符串中删除所有非"单词字符",留下重音字符?

显然,当我使用正则表达式时,Java的正则表达式将变音符号和其他特殊字符计为非"单词字符".

        "TESTÜTEST".replaceAll( "\\W", "" )
Run Code Online (Sandbox Code Playgroud)

为我返回"TESTTEST".我想要的只是删除所有真正的非"单词字符".没有任何东西的任何方式做到这一点

         "[^A-Za-z0-9äöüÄÖÜßéèáàúùóò]"
Run Code Online (Sandbox Code Playgroud)

只是意识到我忘记了ô?

java regex string

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

在Eclipse中,如何更改类/类型模板中的默认修饰符?

Eclipse的新类型的默认模板(Window> Preferences> Code Style> Code Templates> New Java Files)如下所示:

${filecomment}
${package_declaration}

${typecomment}
${type_declaration}

创建一个新类,它看起来像这样:

package pkg;

import blah.blah;

public class FileName {
    // Class is accessible to everyone, and can be inherited 
}
Run Code Online (Sandbox Code Playgroud)

现在,我热切地认为访问应该尽可能地受到限制,除非明确允许,否则应该禁止继承,所以我想改变${type_declaration}声明所有类final而不是public:

package pkg;

import blah.blah;

final class FileName {
    // Class is only accessible in package, and can't be inherited
}
Run Code Online (Sandbox Code Playgroud)

说起来容易做起来难.我发现谷歌搜索的唯一问题是关于Eclipse邮件列表2004年问题,问题未得到答复.

那么,简而言之:如何在Eclipse中更改默认的类/类型修饰符?

如果重要的话,我正在使用Eclipse Galileo(3.5).

java eclipse templates coding-style

7
推荐指数
1
解决办法
1860
查看次数

如何压缩/捕获System.ObjectDisposedException?

我有一个偶尔抛出此异常的应用程序:

System.ObjectDisposedException: Cannot access a disposed object.
Object name: "Panel". 
   bei System.Windows.Forms.Control.CreateHandle() 
   bei System.Windows.Forms.Control.get_Handle() 
   bei System.Windows.Forms.ContainerControl.FocusActiveControlInternal() 
   bei System.Windows.Forms.Form.set_Active(Boolean value) 
   bei System.Windows.Forms.Form.WmActivate(Message& m) 
   bei System.Windows.Forms.Form.WndProc(Message& m) 
   bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 
   bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Run Code Online (Sandbox Code Playgroud)

有没有办法在不触及代码的情况下理想地抑制此异常?我正在考虑一些注册表魔术或深奥的.NET配置.

此外,我当然也对捕获此异常的方法感兴趣.似乎没有钩子让我抓住这个例外...当然它不可重复......

.net c#

4
推荐指数
2
解决办法
5364
查看次数

处理SVN分支重复合并的正确方法是什么?

在这里,我们有一个SVN存储库,其中包含一个trunk和一个分支,用于在新版本上进行开发.

分支机构即将准备好发布,所以我决定将分支机构重新整合回主干.显然存在一些冲突.包括已在主干中删除的文件中的大量树冲突.

我愉快地解决了所有的冲突并且做了主干.

问题是我们然后对分支进行了一些小的更改,所以我再次重新集成了分支,发生了所有相同的树冲突.解决它们不是问题,但是有很多问题需要一段时间来手动检查和解决它们,我不希望每次进行更改和重新集成时都要经历相同的解决过程.我曾期望SVN认识到该分支已经重新整合一次,并且只是从最后一次重新整合发生的那一点开始合并.

当我打开修订图时,它显示了主干和分支被拆分的点,但它没有显示合并.应该是?

服务器:WinServer2003(R2sp2),VisualSVNServer(1.7.2).客户端:WindowsXP(sp3),我一直在使用TortoiseSVN(1.6.5)来完成所有这些工作,但我也安装了命令行客户端.

我通过确保我的主干是最新的,并使用TortoiseSVN进行合并来进行合并,并在选择对话框时选择"重新整合分支".我将合并深度设置为"工作副本"

我是否错误地处理了这种情况?我应该采取不同的做法吗?

(也许我们的存储库布局有误.我们从trunk中分支,对分支中的新版本进行了所有更改,现在发布是因为我们正在将分支合并回到trunk.也许这是错误的方法,我已经阅读了一些人反过来做的事情,在主干中进行所有更改,并且只在你准备好发布并且分支成为受支持的发行版本时才进行分支)

svn tortoisesvn merge branch

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

在LINQ-to-SQL中将URI映射到String-field

我正在尝试使用LINQ将URI作为字符串存储在数据库中.

[Column(Name = "Url", DbType = "nvarchar(255)")]
public Uri Url
{
    get
    {
        return new Uri(_url);
    }
    set
    {
        _url = value.AbsoluteUri;
    }
}

private string _url;
Run Code Online (Sandbox Code Playgroud)

但是,当尝试使用以下代码获取数据时,这很好地映射到我的数据库设计:

int id = 3;
_serie = new DataContext(connString).GetTable<Serie>();
var serie = _serie.FirstOrDefault(s => s.Id == id);
Run Code Online (Sandbox Code Playgroud)

在最后一行,我得到一个例外

System.InvalidCastException: Invalid cast from System.String to System.Uri etc
Run Code Online (Sandbox Code Playgroud)

我需要做什么来正确处理我的代码中的URI,但在我的数据库中存储它是一个nvarchar(255)?这似乎很简单,但我无法弄清楚我做错了什么.

c# uri linq-to-sql columnattribute

2
推荐指数
1
解决办法
1245
查看次数