我在Ruby on Rails上构建的一个非常简单的博客应用程序的主页上显示最近的评论.我想限制从comments表的"body"列显示的字符数.我假设我可以在<%= h comment.body%>的代码末尾添加一些东西,但我不知道那将是什么,因为我是Ruby和Rails的新手.
这是我在/views/posts/index.html.erb文件中的代码:
<% Comment.find(:all, :order => 'created_at DESC', :limit => 5).each do |comment| -%>
<p>
<%=h comment.name %> commented on
<%= link_to h(comment.post.title), comment.post %><br/>
<%=h comment.body %>
<i> <%= time_ago_in_words(comment.created_at) %> ago</i>
</p>
<% end -%>
Run Code Online (Sandbox Code Playgroud) 作为我的应用程序要求的一部分,我对ID字段的限制为30个字符.这是我无法控制的,我想知道MongoDB默认的_id字段是否适合我.看起来好像默认的_id字段长度为24个字符.这对我有用,但我想知道这是否可能在未来发生变化.我很清楚事情总是会改变,但是,在接下来的一两年里,我可以期待有24个字符的默认_id字段吗?
我对旧的编程语言非常好奇,尤其是COBOL,而且由于维基百科无法真正告诉我很多关于这个主题的内容,我决定在这里问一下:
COBOL是第一种真正用于金融,股票和银行系统的编程语言吗?
COBOL究竟在哪里使用?
例如,它比Fortran或BASIC更频繁地使用吗?
我不知道你当时是否活着,但是人们对COBOL上升的反应如何呢?他们是否期望它成为未来?
什么时候COBOL实际上不再用于创建新的大系统?
你确定还有用COBOL编写的重要遗留应用吗?我无法以某种方式相信.
为什么第一个if语句评估为true?我知道如果我使用"是"而不是"="那么它将不会评估为真.如果我将String.Empty替换为"Foo",则它不会评估为true.String.Empty和"Foo"都有相同类型的String,那么为什么一个评估为true而另一个不评估?
//this evaluates to true
If Nothing = String.Empty Then
End If
//this evaluates to false
If Nothing = "Foo" Then
End If
Run Code Online (Sandbox Code Playgroud) 我今天使用VS2010将我的VS2008 ASP.NET网站转换为"Web应用程序".所以现在可以构建一个部署包.一个Zip包,可以直接导入IIS7.
通常我在IIS7中添加了一个名为mydomain.com的网站,并将所有内容放在其根目录中.那很有效.
但是,自从我转换为Web应用程序后,此应用程序被添加到我的"网站容器"下面.现在我很困惑,这是我尝试打开网站时的实际情况:
浏览mydomain.com说404 ERROR.
浏览到mydomain.com/mydomain.com会打开实际的网站,但会在子文件夹中而不是根目录中.(应用程序以域名命名)
如何使这个应用程序成为网站的根目录?我希望应用程序在mydomain.com ROOT下运行而不是某些子文件夹.
非常感谢!
我试图从表中获取所有行.
在控制器我有:
meta.Session.query(User).all()
Run Code Online (Sandbox Code Playgroud)
结果是[, ],但我在这个表中有2行.
我在表中使用这个模型:
import hashlib
import sqlalchemy as sa
from sqlalchemy import orm
from allsun.model import meta
t_user = sa.Table("users",meta.metadata,autoload=True)
class Duplicat(Exception):
pass
class LoginExistsException(Exception):
pass
class EmailExistsException(Exception):
pass
Run Code Online (Sandbox Code Playgroud)
接下来,在同一个文件中:
class User(object):
def loginExists(self):
try:
meta.Session
.query(User)
.filter(User.login==self.login)
.one()
except orm.exc.NoResultFound:
pass
else:
raise LoginExistsException()
def emailExists(self):
try:
meta
.Session
.query(User)
.filter(User.email==self.email)
.one()
except orm.exc.NoResultFound:
pass
else:
raise EmailExistsException()
def save(self):
meta.Session.begin()
meta.Session.save(self)
try:
meta.Session.commit()
except sa.exc.IntegrityError:
raise Duplicat()
orm.mapper(User, t_user)
Run Code Online (Sandbox Code Playgroud)
........
int d;
d = some_string.IndexOf("something",1000);
Run Code Online (Sandbox Code Playgroud)
我想indexOf搜索some_string,从位置1000开始并向后搜索.这可能吗?
我大约一个月前刚刚开始研究.NET程序员的一个小团队,最近我们与团队领导讨论了为什么我们的代码中根本不使用数据绑定.每次我们使用数据网格时,我们遍历数据表并逐行填充网格; 代码通常看起来像这样:
Dim dt as DataTable = FuncLib.GetData("spGetTheData ...")
Dim i As Integer
For i = 0 To dt.Rows.Length - 1 '(not sure why we do not use a for each here)'
gridRow = grid.Rows.Add()
gridRow(constantProductID).Value = dt("ProductID").Value
gridRow(constantProductDesc).Value = dt("ProductDescription").Value
Next
'(I am probably missing something in the code, but that is basically it)'
Run Code Online (Sandbox Code Playgroud)
我们的团队负责人说,在九十年代使用Sheridan Grid控件,VB6和ADO记录集时,他使用数据绑定进行了刻录.他不确定究竟是什么问题,但他记得绑定没有按预期工作,并给他带来了一些重大问题.从那时起,他们就不会信任数据绑定并手动加载所有控件的数据.
对话甚至出现的原因是因为我发现数据绑定非常简单,并且非常喜欢将数据表示(在本例中为数据网格)与内存数据源(在本例中为数据表)分开.将数据逐行"加载"到网格中似乎打破了这种区别.我还观察到,随着WPF和Silverlight中XAML的出现,数据绑定似乎是必须的,以便能够用您的数据干净地连接设计者的XAML代码.
我应该何时在.NET中使用数据绑定时要小心?