是否有Rails迁移的最佳实践命名约定,特别是在编辑模型时?
例如,如果我bar在Foo模型中添加一列,我应该命名edit_foo还是add_bar_to_foo
我假设如果我正在编辑多个模型,那么我应该创建多个迁移,但是如果我对单个模型进行多次修改,我会命名add_bar_remove_x_edit_y_to_foo吗?
我已经阅读了许多评论,其中提到黑莓线程模型偏离了Java标准并且可能导致问题,但是没有任何谷歌搜索引起了我对这意味着什么的启发.
我一直在为BlackBerry开发一个相当大的业务应用程序,虽然我之前没有任何Java多线程应用程序的经验,但是没有遇到任何我们能够将其归咎于线程的问题,除了我们自己造成的.
有人可以准确描述黑莓线程模型的不同之处,以及我作为开发人员应该如何考虑这一点?显然,关于该主题的任何链接也都很棒.
我需要一个DOM元素(如HTML标签,转换成不同的类型a,以p在这种情况下),但仍保留所有的原始元素属性.在这种情况下,它们是否对新类型有效并不重要.
有关如何做到这一点的任何建议?
我看过只是创建一个新元素并复制属性,但这并非没有它自己的复杂性.在Firefox中,DOMElement.attributes仅仅包含具有值的属性,但在IE中它报告该元素的所有可能属性.该attributes属性本身是只读的,因此无法复制它.
我正在开发一个J2ME应用程序,它具有大量数据存储在设备上(在1MB但可变的区域内).我不能依赖文件系统,因此我陷入了记录管理系统(RMS),它允许多个记录存储但每个都有有限的大小.我的初始目标平台Blackberry将每个平台限制为64KB.
我想知道是否还有其他人必须解决在RMS中存储大量数据的问题以及他们如何管理它?我想要计算记录大小并在多个商店中分割一个数据集,如果它太大,但这增加了很多复杂性以保持其完好无损.
存储了许多不同类型的数据,但是特别是只有一个数据集将超过64KB限制.
我需要从Ant构建脚本中增加源文件中的数字.我可以使用该ReplaceRegExp任务来查找我想要增加的数字,但是如何在replace属性中增加该数字呢?
这是我到目前为止所得到的:
<replaceregexp file="${basedir}/src/path/to/MyFile.java"
match="MY_PROPERTY = ([0-9]{1,});"
replace="MY_PROPERTY = \1;"/>
Run Code Online (Sandbox Code Playgroud)
在replace属性中,我该怎么做
replace="MY_PROPERTY = (\1 + 1);"
Run Code Online (Sandbox Code Playgroud)
我无法使用该buildnumber任务将值存储在文件中,因为我已经在同一个构建目标中使用它.是否有另一个蚂蚁任务可以让我增加一个属性?
我有以下html:
<div id="ctl00_m_g_f660033c_e200_4bff_b244_b574efe5b9b5">
<ul style="margin-left: 0px">
<li id="li5"><a href="#">T, Paul</a> </li>
<li id="li4"><a href="#">People**R, Jesse</a> </li>
<li id="li1"><a href="#">Animals**El Guapo</a> </li>
<li id="li2"><a href="#">Animals**Sasha</a> </li>
<li id="li3"><a href="#">People**G, Jenice</a> </li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
我想只选择内部文本中包含**的(li)元素.我可以使用以下代码在JQuery中检查这个:
if ($(this).html().indexOf('**') == -1)
{ return; }
Run Code Online (Sandbox Code Playgroud)
但是,我想在JQuery选择器中执行此操作以避免不必要的解析.我可以使用这样的东西来匹配id字段:
$('ul li a[id*='**']')
Run Code Online (Sandbox Code Playgroud)
..但是我无法在JQuery选择器的(a)元素中找到匹配html()的方法.是否有可能做到这一点?
提前致谢
是否可以将我的模型上的外键关系绑定到表单输入?
说我Car和之间有一对多的关系Manufacturer.我想要一个更新表单,Car其中包括用于设置的选择输入Manufacturer.我希望能够使用内置的模型绑定来做到这一点,但我开始认为我必须自己做.
我的动作方法签名如下所示:
public JsonResult Save(int id, [Bind(Include="Name, Description, Manufacturer")]Car car)
Run Code Online (Sandbox Code Playgroud)
表单发布值Name,Description和Manufacturer,其中Manufacturer是类型的主键int.名称和描述设置正确,但不是制造商,这是有道理的,因为模型绑定器不知道PK字段是什么.这是否意味着我必须写一个IModelBinder它知道这个的自定义?我不确定这是如何工作的,因为我的数据访问存储库是通过每个Controller构造函数上的IoC容器加载的.
我正在尝试使用ServiceStack.Text具有非C#属性名称约定的库来反序列化JSON数据,特别是如下所示的蛇案例:
{
"first_name": "Foo",
"last_name": "Bar"
}
Run Code Online (Sandbox Code Playgroud)
我想将其反序列化为POCO:
public class MyDto
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我现在正在这样做:
var dto = JsonSerializer.DeserializeFromString<MyDto>(dtoData);
Run Code Online (Sandbox Code Playgroud)
但这不会识别属性名称.我以前在Newtonsoft.Json使用自定义时ContractResolver克服了这一点.应如何使用ServiceStack.Text?
我不想用DataMember属性来装饰我的dto类,因为这似乎是数据源的关注,而不是dto本身,因此应该由执行反序列化的代码来处理.
如何注释掉Spark视图的某些部分,以便它们不会呈现给客户端?
在aspx页面中我可以这样做:
<%-- server-side comment --%>
Run Code Online (Sandbox Code Playgroud)
我以为使用三个破折号会起作用:
<!--- server-side comment --->
Run Code Online (Sandbox Code Playgroud)
但它不起作用,我现在无法找到我读到的资源.
我遇到了包含单选按钮的嵌套模型表单的问题,当我有多个模型时,所有单选按钮都被视为在同一组中.
我的模型包含一个像这样的has_many关系:
class Order < ActiveRecord::Base
has_many :order_items
accepts_nested_attributes_for :order_items
end
Class OrderItem < ActiveRecord::Base
belongs_to :order
end
Run Code Online (Sandbox Code Playgroud)
然后我有一个部分使用创建OrderItem模型表单
<% fields_for "order[order_items_attributes][]", order_item do |f| %>
Run Code Online (Sandbox Code Playgroud)
这个表单中包含一组在for循环中创建的单选按钮
radio_button_tag "order[order_items_attributes][][colour_id]", "#{colour.id}"
Run Code Online (Sandbox Code Playgroud)
当只有一个孩子时,这可以正常工作,但是当我插入多个孩子时,所有单选按钮都属于同一个组,因为它们都具有相同的属性name="order[order_items_attributes][][colour_id]".这一切都在一个新的模型表单上,所以我不能使用数组索引(name="order[order_items_attributes][0][colour_id]"),因为Rails给出了expected Hash (got Array) for param 'order_items_attributes' 我最后一部分错误的错误,错误是因为我混合了索引和非索引的名称属性.添加索引值是解决这个问题的关键.
以下是params[:order]仅存在一个嵌套模型时哈希的内容:
{"order_items_attributes"=>
[{"size"=>"Small",
"colour_id"=>"4"],
"first_name"=>"sdf",
"last_name"=>"sdf",
"email"=>"sdfg@sgf.com"}
Run Code Online (Sandbox Code Playgroud)
当存在两个嵌套模型时:
{"order_items_attributes"=>
[{"size"=>"Small",
"colour_id"=>"4"},
{"size"=>"Small"}],
"first_name"=>"sdf",
"last_name"=>"sdf",
"email"=>"sdfg@sgf.com"}
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,只有第一个order_item具有colour_id属性.无论选择的单选按钮属于哪种型号(这都有意义),都会发生这种情况.
如何渲染单选按钮,以便为每个子模型创建单独的组?
asp.net-mvc ×2
java ×2
java-me ×2
jquery ×2
.net ×1
actionview ×1
activerecord ×1
ant ×1
blackberry ×1
dom ×1
html ×1
javascript ×1
json ×1
migration ×1
radio-button ×1
regex ×1
rms ×1
servicestack ×1