想象一下这堂课
public class Foo {
private Handler _h;
public Foo(Handler h)
{
_h = h;
}
public void Bar(int i)
{
_h.AsyncHandle(CalcOn(i));
}
private SomeResponse CalcOn(int i)
{
...;
}
}
Run Code Online (Sandbox Code Playgroud)
Mo(q)cking Handler在Foo的测试中,我怎样才能检查Bar()传递给了_h.AsyncHandle什么?
我想将文件存储为/a/b/c/d.txt,但我不知道是否存在任何这些目录,并且如果需要,需要以递归方式创建它们.怎么能用红宝石做到这一点?
我刚刚发现,它似乎是UpperFirstLetterPascalCase()用于私有方法的常见模式.我自己,发现这与私有实例字段和变量的命名规则完全不一致,我发现它也很难读取/调试.
我想问一下,为什么使用方法的第一个大写字母可能比第一个更低的选择更好doThis()?出于好奇......
我有一个'部门'和'newsItem',它们与m:n有关.每当我尝试枚举一个部门的newsItems,从而触发从db中检索时,我得到这个错误:
at ErrorHandler ->handle (
'8',
'Undefined index: newsItems',
'/.../ufscar_symfony/vendor/doctrine/lib/Doctrine/ORM/Persisters/BasicEntityPersister.php',
'807',
array(
'assoc' => array(
'fieldName' => 'newsItems',
'joinTable' => array(),
'targetEntity' => 'UfscarDfmc\OrgBundle\Entity\NewsItem',
'mappedBy' => 'newsItems',
'inversedBy' => null,
'cascade' => array(),
'fetch' => '2',
'type' => '8',
'isOwningSide' => false,
'sourceEntity' => 'UfscarDfmc\OrgBundle\Entity\Department',
'isCascadeRemove' => false,
'isCascadePersist' => false,
'isCascadeRefresh' => false,
'isCascadeMerge' => false,
'isCascadeDetach' => false
),
'sourceEntity' => object(Department),
'offset' => null,
'limit' => null,
'criteria' => array(),
'sourceClass' => object(ClassMetadata)
)
)
特别奇怪的是,在部门,另一个m:n实体中存在另一种关系,它只是起作用,并且映射的设置方式没有区别,我至少检查了10次. …
我可以使用Html Agility Pack使输出看起来很好地缩进,不必要的空白区域被剥离了吗?
我想查看我的队列,msm控制台snapin有这个属性对话框,但它很难阅读,对我很重要的消息被编码,如下所示:
3C 3F 78 6D 6C 20 76 65 <?xml ve
72 73 69 6F 6E 3D 22 31 rsion="1
2E 30 22 20 65 6E 63 6F .0" enco
64 69 6E 67 3D 22 75 74 ding="ut
66 2D 38 22 3F 3E 0D 0A f-8"?>..
3C 65 73 62 3A 6D 65 73 <esb:mes
73 61 67 65 73 20 78 6D sages xm
6C 6E 73 3A 65 73 62 3D lns:esb=
22 68 74 74 …Run Code Online (Sandbox Code Playgroud) 特定
class Category < ActiveRecord::Base
has_many :products, :order => 'name ASC'
end
Run Code Online (Sandbox Code Playgroud)
使用Rails 3堆栈,如何查询"拥有"产品的所有类别?
我想让这个测试通过 - 任何人都知道如何做到这一点?
public class Something
{
public string Name {get; set}
}
public interface IWithId
{
public Guid Id {get; set}
}
public class IdExtender
{
public static Object Extend(object toExtend)
{
...?
}
}
public class Tests
{
[Test]
public void Should_extend_any_object()
{
var thing = new Something { Name = "Hello World!"};
var extended = IdExtender.Extend(thing);
Assert.IsTrue(extended is IWithId);
Assert.IsTrue(extended.Id is Guid);
Assert.IsTrue(extened.Name == "Hello World!");
}
}
Run Code Online (Sandbox Code Playgroud)
我猜这样的事情可以用城堡动态代理,林福等完成......但是怎么样?
通过jquery,我ajax/POST这个json
{"indices":[1,2,6]}:
Run Code Online (Sandbox Code Playgroud)
到symfony2动作.现在我只关心数组,所以如果这让事情变得相当容易,我也可以发帖[1,2,6].
如何将其转换为php对象?
不知何故,这不起作用:
/**
* @Route("/admin/page/applySortIndex", name="page_applysortindex")
* @Method("post")
* @Template()
*/
public function applySortIndexAction()
{
$request = $this->getRequest();
$j = json_decode($request->request->get('json'));
$indices = $j->indices;
return array('data'=> $indices);
}
Run Code Online (Sandbox Code Playgroud)
给了一个
注意:尝试在.../PageController.php第64行中获取非对象的属性(500内部服务器错误)
这将是我访问$ j-> indices的地方,其中$ j似乎为null
海报:
$.ajax({
type: 'POST',
url: "{{ path('page_applysortindex')}}",
data: $.toJSON({indices: newOrder}),
success: ...
Run Code Online (Sandbox Code Playgroud) 考虑这段代码:
#!/usr/bin/perl
package p1;
use Data::Dumper;
sub dump_it {
print Dumper @_
}
package p2;
local *foo = *p1::dump_it;
foo('this works');
#local *foo = *p1::dump_it("but this doesn't");
#foo;
Run Code Online (Sandbox Code Playgroud)
我有点理解,为什么在这里传递参数不起作用,但我认为在某些情况下这会非常实用。有没有办法制作类似于注释掉的部分功能的东西?我不想将 dump_it 包装在另一个子中,而是直接使用引用。