问题列表 - 第17852页

Ruby ActiveRecord模型中的级联删除?

我正在关注rubyonrails.org上的截屏视频(创建博客).

我有以下型号:

comment.rb

class Comment < ActiveRecord::Base
    belongs_to :post
    validates_presence_of :body # I added this
end
Run Code Online (Sandbox Code Playgroud)

post.rb

class Post < ActiveRecord::Base
    validates_presence_of :body, :title
    has_many :comments
end
Run Code Online (Sandbox Code Playgroud)

模型之间的关系工作正常,除了一件事 - 当我删除帖子记录时,我希望RoR删除所有相关的评论记录.我知道ActiveRecords是独立于数据库的,所以没有内置的方法来创建外键,关系,ON DELETE,ON UPDATE语句.那么,有没有办法实现这一点(也许RoR本身可以处理删除相关的评论?)?

ruby-on-rails database-relations rails-activerecord

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

删除 Vim 中的重复行?

我正在尝试使用 VIM 删除我创建的 XML 文件中的重复行。(我无法重新创建文件,因为 ID 号会改变。)

该文件如下所示:

    <tag k="natural" v="water"/>
    <tag k="nhd:fcode" v="39004"/>
    <tag k="natural" v="water"/>
Run Code Online (Sandbox Code Playgroud)

我正在尝试删除重复的 k="natural" v="water" 行之一。当我尝试使用\_修饰符在我的正则表达式替换中包含换行符时,VIM 似乎没有找到任何东西。

关于使用什么正则表达式或工具的任何提示?

regex xml vim

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

使用StopWatch和foreach循环的C#*Strange*问题

我有这个代码:

var options = GetOptions(From, Value, SelectedValue);     
var stopWatch = System.Diagnostics.Stopwatch.StartNew();

foreach (Option option in options)
{
    stringBuilder.Append("<option");

    stringBuilder.Append(" value=\"");
    stringBuilder.Append(option.Value);
    stringBuilder.Append("\"");

    if (option.Selected)
        stringBuilder.Append(" selected=\"selected\"");

    stringBuilder.Append('>');

    stringBuilder.Append(option.Text);
    stringBuilder.Append("</option>");
}

HttpContext.Current.Response.Write("<b>" + stopWatch.Elapsed.ToString() + "</b><br>");
Run Code Online (Sandbox Code Playgroud)

它写入:
00:00:00.0004255在第一次尝试(不在调试中)
00:00:00.0004260在第二次尝试和
00:00:00.0004281在第三次尝试.

现在,如果我更改代码,那么度量将 foreach循环中:

var options = GetOptions(From, Value, SelectedValue);     

foreach (Option option in options)
{
    var stopWatch = System.Diagnostics.Stopwatch.StartNew();

    stringBuilder.Append("<option");

    stringBuilder.Append(" value=\"");
    stringBuilder.Append(option.Value);
    stringBuilder.Append("\"");

    if (option.Selected)
        stringBuilder.Append(" selected=\"selected\"");

    stringBuilder.Append('>');

    stringBuilder.Append(option.Text);
    stringBuilder.Append("</option>");

    HttpContext.Current.Response.Write("<b>" + stopWatch.Elapsed.ToString() + "</b><br>");
}
Run Code Online (Sandbox Code Playgroud)

...我在
[00:00:00.0000014,00:00:00.0000011] = 00:00:00.0000025第一次尝试(不在调试中), …

c# performance foreach loops stopwatch

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

从t-sql select中的日期比较中获取布尔值

我想知道在ms-sql(2005)中是否有可能出现以下内容

SELECT(expiry <getdate())AS过期FROM MyTable WHERE(ID = 1)

我基本上想要评估日期与布尔值的比较,这是否可能在语句的选择部分?

sql t-sql datetime compare sql-server-2005

4
推荐指数
1
解决办法
7616
查看次数

为什么我应该使用"using"关键字来访问我的基类方法?

我写下面的代码是为了解释我的问题.如果我注释第11行(使用关键字"using"),编译器不会编译该文件并显示以下错误:invalid conversion from 'char' to 'const char*'.它似乎没有void action(char)Parent类中看到Son类的方法.

为什么编译器会以这种方式运行?或者我做错了什么?

class Parent
{
    public:
        virtual void action( const char how ){ this->action( &how ); }
        virtual void action( const char * how ) = 0;
};

class Son : public Parent
{
    public:
        using Parent::action; // Why should i write this line?
        void action( const char * how ){ printf( "Action: %c\n", *how ); }
};

int main( int argc, char** argv ) …
Run Code Online (Sandbox Code Playgroud)

c++ oop inheritance using

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

org.springframework.transaction.annotation.Transactional vs javax.jdo.annotations.Transactional

@Transcational在服务层使用spring 时,我需要放上<annotation driven>xml文件.

我想知道

  1. 可以javax.jdo.annotations.Transactional将在服务层使用就像春天呢?无需配置xml文件.等等?

  2. 可以javax.jdo.annotations.Transactional在服务层上使用,无论我是否在dao层使用hibernate/jpa/jdo?除了标记方法之外,我还需要配置其他任何东西@Transactional吗?

  3. javax.jdo.annotations.Transactional和之间是否有任何差异/限制org.springframework.transaction.annotation.Transactional

java spring jdo

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

C#调用方法和变量范围

为什么卡片会在下方更换?让我感到困惑..理解通过ref传递哪个工作正常..但是当传递数组时并没有像我预期的那样做.在.NET3.5SP1下编译

非常感谢

void btnCalculate_Click(object sender, EventArgs e)
{
    string[] cards = new string[3];
    cards[0] = "old0";
    cards[1] = "old1";
    cards[2] = "old2";
    int betResult = 5;
    int position = 5;
    clsRules myRules = new clsRules();
    myRules.DealHand(cards, betResult, ref position);  // why is this changing cards!
    for (int i = 0; i < 3; i++)
        textBox1.Text += cards[i] + "\r\n";  // these are all new[i] .. not expected!

    textBox1.Text += "betresult " + betResult.ToString() + "\r\n";  // this is 5 as …
Run Code Online (Sandbox Code Playgroud)

c#

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

有没有办法一次清除所有JavaScript计时器?

我正在使用jQuery .load为我的网站构建一个自动刷新评论部分.所以我使用javascript'setTimeout'计时器来检查新的评论.

但是在做了一些改变评论页面或删除(所有使用ajax)之类的东西后,一些旧的计时器继续运行,即使我在加载新的ajax内容之前使用了clearTimeout.

当我加载新的ajax内容时,有没有办法清除所有javascript计时器?

javascript jquery timer

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

Ruby中的"$"字符是什么意思?

一直在使用Ruby on Rails并决定查看实际来源.抓住GitHub的回购并开始环顾四周.遇到一些代码,我不知道它做了什么或它引用了什么.

我在actionmailer/test/abstract_unit.rb中看到了这段代码

root = File.expand_path('../../..', __FILE__)
 begin
 require "#{root}/vendor/gems/environment"
 rescue LoadError
 $:.unshift("#{root}/activesupport/lib")
 $:.unshift("#{root}/actionpack/lib")
end

lib = File.expand_path("#{File.dirname(__FILE__)}/../lib")
$:.unshift(lib) unless $:.include?('lib') || $:.include?(lib)

require 'rubygems'
require 'test/unit'

require 'action_mailer'
require 'action_mailer/test_case'
Run Code Online (Sandbox Code Playgroud)

有人能告诉我$ :(又名"bling")引用了什么?

ruby ruby-on-rails

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

如何获取ObjectDataSource的行数

大家好

如何获得ObjectDataSouce的行数?

我使用ObjectDataSource和DataList.我希望在ObjectDataSource返回某些行时向用户显示一些东西,例如在标签中.其中一种情况是没有记录.

谢谢 .

c# objectdatasource rowcount

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