小编Cha*_*lie的帖子

在轨道上的ruby中嵌套布局

我是rails的新手,我正试图弄清楚如何使嵌套布局工作; 我假设他们有点像.net母版页?

我已按照本指南操作,并在布局目录中创建了一个application.erb.html,其中包含:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
  <title><%= @page_title or 'Page Title' %></title>
  <%= stylesheet_link_tag 'layout' %>
  <style type="text/css"><%= yield :stylesheets %></style>
</head>
<body>

<%= yield(:content) or yield %>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

并将我现有的一个布局修改为:

<% content_for :stylesheets do %>

<% end -%>

<% content_for :content do %>
  <p style="color: green"><%= flash[:notice] %></p>
  <%= yield %>
<% end -%>

<% render :file => 'layouts/application' %>
Run Code Online (Sandbox Code Playgroud)

当我在浏览器中查看我的一个视图时,绝对没有任何内容呈现; 当我查看源代码时没有html.

我确定我错过了一些基本的东西,有人能说出来吗?!

ruby-on-rails

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

Castle Windsor:如何从代码中指定构造函数参数?

说我有以下课程

MyComponent : IMyComponent {
  public MyComponent(int start_at) {...}
}
Run Code Online (Sandbox Code Playgroud)

我可以通过xml使用castle windsor注册它的实例,如下所示

<component id="sample"  service="NS.IMyComponent, WindsorSample" type="NS.MyComponent, WindsorSample">  
  <parameters>  
    <start_at>1</start_at >  
  </parameters>  
</component>  
Run Code Online (Sandbox Code Playgroud)

我将如何在代码中执行完全相同的操作?(注意,构造函数参数)

.net castle-windsor

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

qUnit Teardown方法

是否可以在qUnit中的每次测试后运行拆卸方法?如果没有,是否有任何插件可以做到这一点?

javascript jquery unit-testing qunit

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

我该如何模拟这个异步方法?

我的课程大致如下:

public class ViewModel
{
  public ViewModel(IWebService service)
  {
    this.WebService = service;
  }

  private IWebService WebService{get;set;}  
  private IEnumerable<SomeData> MyData{get;set;}

  private void GetReferenceData()
  {
    this.WebService.BeginGetStaticReferenceData(GetReferenceDataOnComplete, null);
  }

  private void GetReferenceDataOnComplete(IAsyncResult result)
  {
    this.MyData = this.WebService.EndGetStaticReferenceData(result);
  }
  .
  .
  .
}
Run Code Online (Sandbox Code Playgroud)

我想模拟我的IWebService接口,以便在调用BeginGetStaticReferenceData时能够调用回调方法.我正在使用Moq,我无法弄清楚如何做到这一点.我的单元测试设置代码看起来像:

//Arrange
var service = new Mock<IWebService>();
service.Setup(x => x.BeginGetStaticReferenceData(/*.......don't know.....*/));
service.Setup(x => x.EndGetStaticReferenceData(It.IsAny<IAsyncResult>())).Returns(new List<SomeData>{new SomeData{Name="blah"}});
var viewModel = new ViewModel(service.Object);
.
.
Run Code Online (Sandbox Code Playgroud)

c# unit-testing asynchronous moq mocking

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

Ember-data和MongoDB,如何处理_id

我正在使用带有rails和MongoDB的ember-data,并且对于在MongoDB中存储ID的方式存在问题 - 在_id字段中.

Ember-data将使用id作为ID的默认字段,所以我试图像这样覆盖它:

App.User = DS.Model.extend
    primaryKey: "_id"
    name: DS.attr "string"
    image: DS.attr "string"
Run Code Online (Sandbox Code Playgroud)

这似乎在大部分时间都有效,但在某些情况下,我从ember说得到例外:

未捕获错误:断言失败:您的服务器返回带有密钥_id的哈希,但您没有映射

我怀疑这可能是ember-data中的一个错误,因为它仍处于开发阶段,但是我试图找到一种方法来将_id映射到服务器端的id中?我正在使用mongoid来进行mongo映射.

ruby-on-rails mongodb mongoid ember.js ember-data

9
推荐指数
2
解决办法
4154
查看次数

Ember数据保存了一段感情

我很难在ember数据中保存一对多的关系.我有这样的关系:

App.ParameterSet = DS.Model
    name: DS.attr("string")
    regions: DS.hasMany("App.Region")

App.Region = DS.Model
    name: DS.attr("string")
Run Code Online (Sandbox Code Playgroud)

如果我做这样的事情:

parameterSet = App.ParameterSet.find(5)
@transaction = @get("store").transaction()
@transaction.add(parameterSet)
region1 = App.Region.find(10)
region2 = App.Region.find(11)
parameterSet.set("name", "foo")
parameterSet.get("regions").pushObject(region)
@transaction.commit()
Run Code Online (Sandbox Code Playgroud)

然后我想看到带有这样的有效负载的PUT请求:

api/ParameterSets/5

{parameterSet: {name: "foo", regionIds:[10, 11]}}
Run Code Online (Sandbox Code Playgroud)

但相反,我得到了这个:

{parameterSet: {name: "foo"}}
Run Code Online (Sandbox Code Playgroud)

我不关心从孩子到父母的关系,但如果我添加parameterSet: DS.belongsTo("App.ParameterSet")到App.Region模型,那么我得到2个PUT请求到区域url的两个新关系,这不是我想要的.

我想这是一个多对多的关系,我不确定是否支持,但有关如何实现我所描述的任何想法?谢谢

javascript ember.js ember-data

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

调试时无法进入迭代器块(C#)

我正在尝试调试从单元测试项目执行的代码,但是当我尝试进入某个方法时,它只是直接进入下一行,并且该方法内的断点未被命中.该方法位于一个不同项目的类中,但所有代码都是在调试模式下构建的,我尝试过清理和重建解决方案,没有任何乐趣.

但是,这只是因为我在方法中添加了一个迭代器块.当我删除它并重建时,我可以介入.奇怪的?

我正在使用Visual Studio 2010 Beta 1,这可能只是一个错误吗?

c# debugging iterator visual-studio-2010

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

XML与序列化/反序列化的二进制性能

我正在开发一个紧凑的框架应用程序,需要提高性能.该应用程序当前通过将对象序列化为XML并将其存储在数据库中而脱机工作.使用分析工具,我可以看到这是一个相当大的开销,减慢了应用程序.我想如果我切换到二进制序列化,性能会增加,但因为在紧凑的框架中不支持,我看了protobuf-net.序列化似乎更快,但反序列化要慢得多,并且应用程序比串行化更多地反序列化.

二进制序列化应该更快,如果是这样,我可以做些什么来加快性能?这是我如何使用XML和二进制文件的片段:

XML序列化:

public string Serialize(T obj)
{
  UTF8Encoding encoding = new UTF8Encoding();
  XmlSerializer serializer = new XmlSerializer(typeof(T));
  MemoryStream stream = new MemoryStream();
  XmlTextWriter writer = new XmlTextWriter(stream, Encoding.UTF8);
  serializer.Serialize(stream, obj);
  stream = (MemoryStream)writer.BaseStream;
  return encoding.GetString(stream.ToArray(), 0, Convert.ToInt32(stream.Length));
}
public T Deserialize(string xml)
{
  UTF8Encoding encoding = new UTF8Encoding();
  XmlSerializer serializer = new XmlSerializer(typeof(T));
  MemoryStream stream = new MemoryStream(encoding.GetBytes(xml));            
  return (T)serializer.Deserialize(stream);
}
Run Code Online (Sandbox Code Playgroud)

Protobuf-net二进制序列化:

public byte[] Serialize(T obj)
{
  byte[] raw;
  using (MemoryStream memoryStream = new MemoryStream())
  {
    Serializer.Serialize(memoryStream, obj);
    raw …
Run Code Online (Sandbox Code Playgroud)

.net c# serialization compact-framework protobuf-net

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

单元测试的Resharper问题

我使用mstest尝试运行我的单元测试时遇到了一些恼人的问题.我可以选择一个单独的单元测试并运行/调试它,但是当我选择父节点来运行一堆测试时,测试不会运行; 它只显示待处理几秒钟,然后测试变为灰色.如果我在测试中设置断点并再次使用调试器,我得到相同的结果并且没有命中断点.有没有其他人经历过这个?

resharper unit-testing mstest visual-studio

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

Windows Phone 7模拟框架?

Windows Phone 7是否有任何模拟框架,还是需要手动创建假货?

我没有在google上找到任何内容,虽然我发现Moq在WP7资源页面上列出,但我无法使用它.

tdd mocking windows-phone-7

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