小编Jac*_*ius的帖子

MVC 3不会在区域下查找视图

我在MVC 3中使用了多个区域,而且我的查看无法找到问题.路由似乎正确地拾取我的控制器(所有操作都没有任何问题地执行),但是当我返回视图MVC时根本找不到它.

因此,如果我在一个名为'Some'的区域中有一个名为'Thing'的简单控制器,我会执行以下操作...

public ActionResult Index()
{
    return View("Index");
}
Run Code Online (Sandbox Code Playgroud)

操作正确执行,但MVC找不到视图,我会收到类似的消息

未找到视图'索引'或它的主人......它将显示所有搜索到的位置,这将是

〜/ Views/Thing/Index.cshtml~/Views/Shared/Index.cshtml

等等,但它没有看

〜/一些/浏览/事/ Index.cshtml

关于我做错了什么的任何想法?

c# asp.net asp.net-mvc-3-areas asp.net-mvc-3

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

在ActiveModel :: Serializer中序列化错误哈希

我正在使用ActiveModel :: Serializer来自定义我的API的JSON响应.这在大多数情况下都可以正常工作,除非它无法成功保存模型.

例如,

def create
  def create
    book = Book.new(book_params)
    book.save

    respond_with book, location: nil
  end
end
Run Code Online (Sandbox Code Playgroud)

据我了解,respond_with动作基本上会执行看起来像这样的代码(为了生成响应).

  if resource.errors.any?
    render json: {:status => 'failed', :errors => resource.errors}
  else
    render json: {:status => 'created', :object => resource}
  end
Run Code Online (Sandbox Code Playgroud)

这与我所看到的情况相符 - 如果我的模型无法成功保存,我会将错误哈希视为响应.但是,我无法弄清楚如何为错误哈希指定序列化程序.

我尝试定义一个ErrorsSerializer,如果我运行

ActiveModel::Serializer.serializer_for(book.errors)
Run Code Online (Sandbox Code Playgroud)

在控制台中,它似乎找到了我的序列化程序,但它没有得到使用.如何在此方案中自定义JSON响应?

serialization json ruby-on-rails active-model-serializers ruby-on-rails-4

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

使用rspec验证页面标题

我正在阅读Michael Hartl的Rails教程.

我正在尝试验证我的页面标题.测试看起来像这样:

it "should have the right title" do
      get 'home'
      response.should have_selector("title", :content => "Ruby on Rails Tutorial Sample App | Home")
    end
Run Code Online (Sandbox Code Playgroud)

HTML头部分看起来像这样

<head>
    <title>Ruby on Rails Tutorial Sample App | Home</title>
</head>
Run Code Online (Sandbox Code Playgroud)

我遇到了以下失败

1)PagesController GET'home'应该有正确的标题失败/错误:response.should have_selector("title",:content =>"Ruby on Rails Tutorial Sample App | Home")预期输出后包含Ruby on Rails教程示例应用程序| 主页标签:#./ spec/control/pages_controller_spec.rb:13:在'块(3级)中'

我期待这个过去.我究竟做错了什么?我正在使用Rails 3和RSpec 2.0.0

rspec ruby-on-rails

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

使用TFS自动结账

我最近搬到了一个新的客户端,源控制系统是TFS 2008.我已经使用Subversion近4年了,所以这对我来说是一个很大的变化.我注意到的第一件事就是每次我尝试修改文件时Visual Studio(2008)告诉我该文件是只读的.我跟那个负责TFS的人谈过,他告诉我在修改之前需要手动签出该文件.所以基本上自动结账不适合我.

到目前为止,我唯一的建议是在工具 - >选项 - >源控制 - >环境 - >提示签出中启用它.哪个没用 - 它已经启用了.(加上Visual Studio甚至没有提示我签出 - 它只是告诉我文件是写保护的)

是否有可能将TFS设置为不允许自动检出?(我不允许触摸TFS设置 - 我们有一个完整的部门)或者我只是失明?

tfs visual-studio-2008

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

如何将CSS类应用于HtmlTableCell?

我正在使用WebForms. HtmlTableCell没有CssClass财产.我可以做这个:

<td class="whatever"></td>
Run Code Online (Sandbox Code Playgroud)

但不是这个:

myTableCell.Class = "whatever";
Run Code Online (Sandbox Code Playgroud)

如何将CSS类应用于我的HtmlTableCell

c# webforms

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

ASP.NET MVC中的jQuery模板与部分视图

我正在看一下jQuery模板.它看起来很有趣 - 语法简单,易于使用,非常干净.

但是,我真的不明白为什么最好使用jQuery模板而不是简单地通过AJAX获取部分视图.看起来部分视图似乎更容易维护,有助于避免重复代码.

我想使用jQuery模板.但什么时候会比部分观点更好?

asp.net-mvc jquery jquery-templates

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

Raphaeljs在IE中将所有文本呈现为Italic

我正在使用RaphaelJS直观地表示一些数据.基础技术是SVG,所以显然在IE中并不总是能很好地工作,但是库仍然能够提供有用的东西,尽管它往往看起来很差.

无论如何,我似乎无法解决这个基本问题.Chrome或FireFox中的文本呈现正常,但在IE8中,所有内容都呈现为粗体和斜体.

要查看我的问题,请转到RaphaelJS游乐场并使用以下代码

paper.text(100, 100, "this is the text")
Run Code Online (Sandbox Code Playgroud)

以下是Chrome和IE的结果.

铬 IE8

这有什么解决方法吗?

internet-explorer svg vml raphael internet-explorer-8

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

jQuery Highlight假设背景为白色

我正在尝试对表格中的某些单元格执行突出显示效果.我的问题是,由于某种原因,jQuery突出显示效果似乎假设默认情况下背景颜色为白色.因此,如果我的桌子的行是深灰色,例如,它会闪烁我指定的颜色,然后淡出回白色?然后再次切换到深灰色.

我已经设法在jsFiddle上重现它(用Chrome测试).只需点击表格行即可查看我在说什么.

http://jsfiddle.net/ZncRM/

我希望它能够恢复到正确的背景颜色 - 在这种情况下是深灰色.我怎么做?

只是为了澄清 - 在jQuery文档中列出的示例中,它似乎根本不会淡化为白色. jQuery高亮示例

css jquery highlight

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

从Classic ASP执行存储过程

出于一些奇妙的原因,我发现自己在经典ASP页面中调试了一个问题(在过去的两天里我至少失去了10年的生命).

我正在尝试执行包含一些OUT参数的存储过程.问题是当存储过程返回时,没有填充其中一个OUT参数.我可以从SQL管理工作室(这是2008)执行存储过程,并且所有值都被设置并完全按预期返回.

declare @inVar1 varchar(255)
declare @inVar2 varchar(255)
declare @outVar1 varchar(255)
declare @outVar2 varchar(255)

SET @inVar2  = 'someValue'

exec theStoredProc @inVar1 , @inVar2 , @outVar1 OUT, @outVar2 OUT

print '@outVar1=' + @outVar1
print '@outVar2=' + @outVar2 
Run Code Online (Sandbox Code Playgroud)

效果很好.太棒了.完善.我期待的确切值将被返回并打印出来.

是的,因为我正在尝试调试经典ASP页面,所以我将代码复制到VBScript文件中以尝试缩小问题范围.

这是我想出的:

Set Conn = CreateObject("ADODB.Connection")
Conn.Open "xxx"

Set objCommandSec = CreateObject("ADODB.Command")
objCommandSec.ActiveConnection = Conn

objCommandSec.CommandType = 4
objCommandSec.CommandText = "theStoredProc "

objCommandSec.Parameters.Refresh

objCommandSec.Parameters(2) = "someValue"

objCommandSec.Execute

MsgBox(objCommandSec.Parameters(3))
Run Code Online (Sandbox Code Playgroud)

不行.一点儿都没有.(我生命中的另外十年)第三个参数只是NULL - 这也是我在Classic ASP页面中遇到的.

有人可以对此有所了解吗?我认为经典的ASP代码与VBScript代码相同,我是完全愚蠢的吗?我认为它使用相同的脚本引擎和语法,所以我应该没问题,但我不是100%肯定.

我从VBScript中看到的结果与我在ASP中看到的结果相同.

vbscript asp-classic

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

rb_gc()上的跨线程冲突

我正在处理的代码库最近从Ruby 1.9.2升级到Ruby 1.9.3,从Rails 3.1升级到Rails 3.2.2.由于我正在使用RVM,我只是按照rvm install 1.9.3我的预期做了所有必要的事情.

我跑的时候

rails s
Run Code Online (Sandbox Code Playgroud)

我收到了错误

[BUG]跨线程违规 rb_gc()

我找到了许多与此问题有关的链接.StackOverflow上一个,但它并没有给出答案.最有希望的答案是在RVM网站上:

在我所看到的每一个例子中,我总是最终得到一个带有C扩展的ruby gem /库是针对不同的ruby和/或架构编译的,而不是试图加载它的那个.尝试卸载并重新安装具有C扩展名的gem,应用程序使用这些扩展来捕获此buggar.

这是相当有用的,但我的Ruby-fu不够强大,无法知道哪些宝石有C扩展,哪些我应该尝试重新安装.关于该主题的其他几个链接似乎表明json gem有问题,所以我尝试按照建议的解决方案.

gem uninstall json 
gem install --platform=ruby
Run Code Online (Sandbox Code Playgroud)

这对我来说并没有真正改变任何东西 - 在尝试启动Rails环境时我仍然得到完全相同的错误.

如何追踪此问题?

如果有帮助,这里是gem列表的输出:

actionmailer (3.2.2)
actionpack (3.2.2)
activemodel (3.2.2)
activerecord (3.2.2)
activeresource (3.2.2)
activesupport (3.2.2)
addressable (2.2.7)
akami (1.0.0)
arel (3.0.2)
bcrypt-ruby (3.0.1)
bson (1.6.1)
bson_ext (1.6.1)
builder (3.0.0)
bundler (1.1.3, 1.0.21)
capybara (1.1.2)
carmen (0.2.13)
childprocess (0.3.1)
ci_reporter (1.7.0)
coderay (1.0.5)
coffee-rails (3.2.2)
coffee-script …
Run Code Online (Sandbox Code Playgroud)

ruby install ruby-on-rails ruby-on-rails-3.1 ruby-1.9.3

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