小编Ecn*_*lyr的帖子

接收错误PG :: UndefinedColumn:ERROR:列mymodels.distance在使用Geocoder的near方法时不存在

使用此查询时(与Railscasts第273集中相同):

@locations = Location.near(params[:search], 50, :order => :distance)
Run Code Online (Sandbox Code Playgroud)

或者,更简洁:

@mymodels = MyModel.near(address, distance, order: :distance)
Run Code Online (Sandbox Code Playgroud)

我收到错误:

PG::UndefinedColumn: ERROR:  column mymodels.distance does not exist
Run Code Online (Sandbox Code Playgroud)

distance列应该由Geocoder gem添加到结果中,但它似乎没有出现在结果中(所以我得到了上面的错误).

ruby-on-rails pg rails-geocoder ruby-on-rails-4

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

当我的模型为null时,如何在View中的foreach循环中避免NullReferenceException?

当我通过我的控制器传入一个空值时,我得到一个"NullReferenceException未被用户代码处理"错误,我的视图中包含以下代码.在某些情况下,我想传入一个空值,但我不希望在发生这种情况时抛出错误.我应该将代码更改为什么?

最初我的代码是:

@foreach (var item in Model.MyModelStuff)
{
    <tr>
        <td>
                @Html.DisplayFor(modelItem => item.Bla.Title)
        </td>
    <tr>
}
Run Code Online (Sandbox Code Playgroud)

我试过以下但没有成功:

@foreach (var item in Model.MyModelStuff.Where( item => item.MyModelStuff != null))
etc. . . 
Run Code Online (Sandbox Code Playgroud)

如何更改代码以便它在不抛出错误的情况下处理null?我读过我可能需要返回我的模型的空集合(?),我将如何去做 - 如果它确实是必要的事情?

asp.net-mvc foreach

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

在表上引入FOREIGN KEY约束可能会导致循环或多个级联路径导致Database.SetInitializer不起作用?

我的代码优先数据库工作得很好.如果我对数据库上下文进行了更改,则下次启动应用程序时将更新数据库.但后来我在数据库中添加了一些模型,并在重新启动应用程序时出现此错误:

Introducing FOREIGN KEY constraint 'FK_OrderDetails_Orders_OrderId' on table 'OrderDetails' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints. Could not create constraint. See previous errors.

其中一个奇怪的事情是,如果我再次启动应用程序而不更改任何内容,那么我会收到此错误:

Model compatibility cannot be checked because the database does not contain model metadata. Model compatibility can only be checked for databases created using Code First or Code First Migrations.

为了再次发生第一个错误,我必须删除我的.mdf和.ldf文件(数据库),并用我的修订历史记录中的副本替换.mdf文件.

世界上为什么会发生这种情况?


以供参考:

我的Global.asax.cs文件在Application_Start()方法中有这个:

Database.SetInitializer<EfDbContext>(new EfDbContextInitializer());

看起来像这样:

public class …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc database-design entity-framework asp.net-mvc-3 entity-framework-4.3

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

Linq查询,如何检查空值并使用值0代替null?

我有以下查询:

var ordersPlacedBeforeOneHourList = ordersPlacedBeforeOneHourAgo.Select(order => order.Promo.PercentOff * (double) order.TotalCost).ToList();
Run Code Online (Sandbox Code Playgroud)

我的一些人order.Promo.PercentOff是空的.如何更改上面的行,以便if order.Promo为null,它的行为就像值是0

这个想法是,如果没有应用特定的促销,我将计算促销的成本0 * order.TotalCost(总是为0),然后继续下一个值来计算哪里orders.Promo可能不为空,并在线下.

c# linq

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

使用HTML在图像上书写文本

我是HTML的新手,想要显示左边显示的图像.

我已经显示这是一个形象table row,但我没能获得该文本(IN如下图所示blog.com).

我怎么写在图像上?

任何帮助赞赏.


编辑

我试过了

.logoBg
{
    background-image: url('images/logo01.gif');
    background-color: #72c2dd;
}
Run Code Online (Sandbox Code Playgroud)

<tr class="logoBg">
    <td colspan=5>IN
    </td>
    </tr>
Run Code Online (Sandbox Code Playgroud)

但我只获得文字和背景颜色,但没有背景图片.

html css html-table

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

如何将部分会话存根以模拟授权会话?

我的产品控制器上有一个前置过滤器:

before_filter :authorize, only: [:create, :edit, :update]
Run Code Online (Sandbox Code Playgroud)

我的authorize方法在我的定义中application_controller:

def authorize
    redirect_to login_url, alert: "Not authorized" if current_user.nil?
end
Run Code Online (Sandbox Code Playgroud)

和current_user定义为:

def current_user
    @current_user ||= User.find(session[:user_id]) if session[:user_id]
end
Run Code Online (Sandbox Code Playgroud)

在我的rspec中,我正在尝试:

before(:each) do
    session.stub!(:user_id).and_return("admin@email.com")
end
Run Code Online (Sandbox Code Playgroud)

但我仍然收到如下错误:

ProductsController PUT update with valid params redirects to the product
     Failure/Error: response.should redirect_to(product)
       Expected response to be a redirect to <http://test.host/products/1> but was a redirect to <http://test.host/login>
Run Code Online (Sandbox Code Playgroud)

...这意味着我的测试在请求时没有登录.

我在这里错过了什么?

有没有更好的方法来应对这种情况?

rspec stub ruby-on-rails-3 ruby-on-rails-3.2

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

如何在<li>中的<span>与<li>的右侧对齐

我有一个来自bootstrap框架的类'label' .我将这个标签嵌套在a中<li>,我希望它能正确对齐其余的内容<li>.

在我尝试修改css之前,我的li看起来像这样(橙色的"新项目"是标签):没有css

如果我尝试float: right标签向右移动,但是在<li>这里看到的右上角:向右浮动

您还可以看到新项目标签在一种情况下被推送到下一行 - 我认为这是一个无关的问题.

有关如何让我的"新项目"跨越移动到我右边的任何提示<li>?下面是我主持的演示页面的链接: 一个

css alignment twitter-bootstrap

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

使用ERB和Handlebars模板

我有一个模式,使用ajax创建新标签.它使用Tags参数执行POST方法,而不对视图进行充值.所以我希望,根据所选的"price_type"参数,渲染一个价格div或另一个.我使用Handlebars所以我认为这不是ruby的条件责任(因为AJAX),但Handlebars条件负责.

问题是我尝试了很多方法来制作Handlebars条件但没有成功.

我希望通过Handlebars条件实现与此类似的功能,其中@tag.price_type存储{{price_type}}在JS中.由于我正在使用AJAX,如果我尝试这个它就行不通.

    <script id="entry-template" type="text/x-handlebars-template">
      <% if @tag.price_type === 1 %>
        <span class="small right white article_price">{{min_price}} €</span>
      <% elsif @tag.price_type === 2 %>
        <span class="small right white article_price">{{min_price}} €</span> - <span class="small right white article_price">{{max_price}} €</span>
      <% else %>
        <span class="small right white article_price">No sabe</span>
      <% end %>
    </script>
Run Code Online (Sandbox Code Playgroud)

可能吗?也许将文件保存为hbs.erb?如果没有,纯手柄模板将如何?我尝试制作一个我不理解的自定义助手,但没有.感谢你们.

javascript ruby-on-rails handlebars.js

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

如何使用变量在html.erb文件中分配css id?

我在.html.erb视图文件中有一个类,我想根据变量给出一个id.

我想做这样的事情:

<ul id="#{store}">
Run Code Online (Sandbox Code Playgroud)

哪个store是包含字符串"store1"的变量.

我想要这样产生一个像这样的ul:<ul id=store1>但是我得到了<ul id=#{store}>.

我是否需要创建帮助以帮助实现此目的,或者是否有一些我忽略的语法?

escaping ruby-on-rails erb

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

Nokogiri XML.children除了实际元素之外还返回格式化元素.怎么避免这个?

我有以下XML:

<attributes>
    <intelligence>27</intelligence>
    <memory>21</memory>
    <charisma>17</charisma>
    <perception>17</perception>
    <willpower>17</willpower>
</attributes>
Run Code Online (Sandbox Code Playgroud)

我想解析以下内容:

intelligence: 27, memory: 21, charisma: 17, perception: 17, willpower: 17
Run Code Online (Sandbox Code Playgroud)

当我尝试这段代码时:

def get_attributes(api)
  attributes = []
  api.xpath("//attributes").children.each do |attribute|
    name = attribute.name.tr('^A-Za-z0-9', '')
    text = attribute.text
    attributes << "#{name}: #{text}"
  end
  attributes
end
Run Code Online (Sandbox Code Playgroud)

我得到每个偶数子项的换行数据(因为格式化)的结果:

#(Text "\n      ")
#(Element:0x3ffe166fdb9c { name = "intelligence", children = [ #(Text "20")] })
#(Text "\n      ")
#(Element:0x3ffe166f71ac { name = "memory", children = [ #(Text "25")] })
#(Text "\n      ")
#(Element:0x3ffe166f3818 { name = "charisma", children …
Run Code Online (Sandbox Code Playgroud)

ruby nokogiri ruby-on-rails-3

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