问题列表 - 第26292页

Django可以在每个单元测试之间刷新它的数据库吗?

Django(1.2 beta)将在每个运行的测试之间重置数据库,这意味着每个测试都在空DB上运行.但是,数据库不会刷新.刷新数据库的一个影响auto_increment是重置计数器.

考虑通过主键从数据库中提取数据的测试:

class ChangeLogTest(django.test.TestCase):
    def test_one(self):
        do_something_which_creates_two_log_entries()
        log = LogEntry.objects.get(id=1)
        assert_log_entry_correct(log)
        log = LogEntry.objects.get(id=2)
        assert_log_entry_correct(log)
Run Code Online (Sandbox Code Playgroud)

这将通过,因为只创建了两个日志条目.但是,如果添加了另一个测试ChangeLogTest并且它恰好在之前 运行test_one,则日志条目的主键不再是1和2,它们可能是2和3.现在test_one失败.

这实际上是一个两部分问题:

  1. 是否可以强制./manage.py test在每个测试用例之间刷新数据库?
  2. 由于Django默认情况下不会在每个测试之间刷新数据库,因此可能有充分的理由.有人知道吗?

database django unit-testing

8
推荐指数
2
解决办法
6441
查看次数

在HTML中存储任意数据

将数据嵌入html元素以供以后使用的最佳方法是什么?

举个例子,假设我们让jQuery从服务器返回一些JSON,我们想把这个数据作为段落转发给用户.但是,我们希望能够将元数据附加到这些元素,因此我们可以在以后为这些元素添加事件.

我倾向于处理这个问题的方式是使用一些丑陋的前缀

function handle_response(data) {
    var html = '';
    for (var i in data) {
        html += '<p id="prefix_' + data[i].id + '">' + data[i].message + '</p>';
    }
    jQuery('#log').html(html).find('p').click(function(){
            alert('The ID is: ' + $(this).attr('id').substr(7));
    });
}
Run Code Online (Sandbox Code Playgroud)

或者,可以在段落中构建表单,并将元数据存储在那里.但是,这通常感觉有点矫枉过正.

以前曾以不同的方式询问过这个问题,但我觉得它没有得到很好的解答:

html javascript jquery

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

Ruby on rails:选择具有默认值属性的选项菜单

我需要在列表中生成一个带有Default值的选择菜单<options>.这就是我需要它的样子.

<select name="menu[parent_id]" id="menu_parent_id">
 <option value="0">==None==</option>
 <option value="34">TEST</option>
</select>
Run Code Online (Sandbox Code Playgroud)

目前我select在我的表单中使用这个帮助器

   <%= f.select(:parent_id, @parent_menus.collect {|p| [ p.name, p.id ] }, {:include_blank => '==None=='})%>
Run Code Online (Sandbox Code Playgroud)

上面的代码产生了这个; (value="")

<select name="menu[parent_id]" id="menu_parent_id">
 <option value="">==None==</option>
 <option value="34">TEST</option>
</select>
Run Code Online (Sandbox Code Playgroud)

这里有人能告诉我添加value="0"到选项列表的方法吗?

ruby-on-rails form-helpers

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

如何从JavaScript的asp.net文本框中检索值?

我有一个带有几个asp.net文本框控件的asp.net Web表单:

<asp:TextBox ID="txtTextBox" runat="server" /> .
Run Code Online (Sandbox Code Playgroud)

我有一个包含在页面中的javascript文件tools.js:

<script src="tools.js" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)

如何从javascript访问txtTextBox中的值?

我试过用

document.getElementById('<%= txtTextBox.ClienID %>').value;
document.getElementById('<%= txtTextBox.UniqueID %>').value;
document.getElementById('<%= txtTextBox %>').value;
Run Code Online (Sandbox Code Playgroud)

但它们都不起作用.

有任何想法吗?

javascript asp.net

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

为什么System.arraycopy在Java中是原生的?

我很惊讶在Java源代码中看到System.arraycopy是一个本机方法.

当然原因是因为它更快.但是什么原生技巧是能够使用的代码使其更快?

为什么不循环遍历原始数组并将每个指针复制到新数组 - 当然这不是那么缓慢和麻烦?

java arrays native arraycopy

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

如何从字符串设置Border.BorderBrush

这是一个问题.我不能使用每个C#-Code的字符串值设置BorderBrush(不在XAML中):

 ((Border)((Image)sender).Parent).BorderBrush = "#FFBCC7D8";
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题呢?

c# wpf brush colors

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

PhoneGap与Titanium

PhoneGapTitanium允许您基于HTML和JavaScript构建本机iPhone应用程序.

有没有人获得两者的经验?有什么区别?

iphone titanium cordova

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

cmd.exe:复杂的条件?

在DOS批处理文件中,在IF语句中,是否可以使用AND或OR组合两个或多个条件?我无法找到任何相关文档

编辑 - help if并且MS文档没有说明在if中使用多个条件.

我想AND的解决方法就是做

if COND1 (
  if COND2 (
    cmd
  )
)
Run Code Online (Sandbox Code Playgroud)

但这正是我想要避免的.

windows conditional batch-file

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

map operator []操作数

大家好,我在成员函数中有以下内容

int tt = 6; 
vector<set<int>>& temp = m_egressCandidatesByDestAndOtMode[tt]; 
set<int>& egressCandidateStops = temp.at(dest);
Run Code Online (Sandbox Code Playgroud)

以及成员变量的以下声明

map<int, vector<set<int>>> m_egressCandidatesByDestAndOtMode;
Run Code Online (Sandbox Code Playgroud)

但编译时遇到错误(英特尔编译器11.0)

1>C:\projects\svn\bdk\Source\ZenithAssignment\src\Iteration\PtBranchAndBoundIterationOriginRunner.cpp(85): error: no operator "[]" matches these operands
1>            operand types are: const std::map<int, std::vector<std::set<int, std::less<int>, std::allocator<int>>, std::allocator<std::set<int, std::less<int>, std::allocator<int>>>>, std::less<int>, std::allocator<std::pair<const int, std::vector<std::set<int, std::less<int>, std::allocator<int>>, std::allocator<std::set<int, std::less<int>, std::allocator<int>>>>>>> [ const int ]
1>          vector<set<int>>& temp = m_egressCandidatesByDestAndOtMode[tt]; 
1>                                                                    ^
Run Code Online (Sandbox Code Playgroud)

我知道它必须是愚蠢的,但我看不出我做错了什么.

UPDATE我从const成员函数调用它,这就是为什么成员变量的类型是const所以我认为类似下面的内容应该修复它:

int dest = 0, tt = 6; 
const set<int>& egressCandidateStops = m_egressCandidatesByDestAndOtMode[tt].at(dest); 
Run Code Online (Sandbox Code Playgroud)

但没有骰子......仍然是同样的错误.

c++ map operands

13
推荐指数
2
解决办法
6682
查看次数

在已销毁的嵌套模型轨中的validates_uniqueness_of

我有一个Project模型,它接受Task的嵌套属性.

class Project < ActiveRecord::Base  
  has_many :tasks

  accepts_nested_attributes_for :tasks, :allow_destroy => :true

end

class Task < ActiveRecord::Base  
validates_uniqueness_of :name end
Run Code Online (Sandbox Code Playgroud)

任务模型中的唯一性验证在更新Project时会出现问题.

在编辑项目时,我删除任务T1,然后添加一个同名T1的新任务,唯一性验证限制了项目的保存.

params hash看起来像

task_attributes => { {"id" =>
"1","name" => "T1", "_destroy" =>
"1"},{"name" => "T1"}}
Run Code Online (Sandbox Code Playgroud)

在销毁旧任务之前完成对任务的验证.因此验证失败.任何想法如何验证,它不会考虑任务被销毁?

ruby-on-rails nested-forms validates-uniqueness-of

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