我正试图找出从rails查询日期范围的最佳方法...我在Google上查看但不确定如何使用此语法.
我有一个具有各种事件的模型,我想在我的查找条件中添加一个警告,该警告应该只显示字段:st_date是今天或更晚的事件,实际上只显示当前数据,没有发生在今天之前.
我遇到了一个问题,因为我没有结束日期来停止查询,我想查询从今天到下个月的所有内容.
我在想类似的东西
@events = Event.find(:all, :conditions => ["start_date between ? and ?",
date.Today, date.next_month.beginning_of_month])
Run Code Online (Sandbox Code Playgroud)
但我得到错误undefined局部变量或方法'日期'......
我是否需要做任何特别的事情才能使用Date类?或者我的查询语法有问题吗?我真的很感激任何帮助.
我用git rm -r删除了rails应用程序中的db文件夹
我试过了
git reset HEAD
Run Code Online (Sandbox Code Playgroud)
和
git reset --hard HEAD
Run Code Online (Sandbox Code Playgroud)
但是迁移文件没有回来.我尝试提交,然后运行重置,但仍然没有.
我该怎么办?
我正在尝试通过按钮的操作在连接表中创建记录.我会有一个事件模型,并希望跟踪每个用户的选定事件.
我使用HABTM关系,因为我不需要任何额外的字段.
User.rb:
has_to_and_belongs_to_many :events
Run Code Online (Sandbox Code Playgroud)
Event.rb:
has_to_and_belongs_to_many :users
Run Code Online (Sandbox Code Playgroud)
Events_Users迁移:
[user_id, event_id, id=>false]
Run Code Online (Sandbox Code Playgroud)
我对实际创建的记录感到困惑.有人在早些时候帮助我在控制台中添加记录:
u = User.find(1)
u.events << Event.find(1)
Run Code Online (Sandbox Code Playgroud)
现在我想通过点击链接来执行操作......这是正确的方向吗?
def add
@user = User.find(session[:user_id])
@event = Event.find(params[:id])
if @user.events.save(params[:user][:event])
flash[:notice] = 'Event was saved.'
end
end
Run Code Online (Sandbox Code Playgroud)
我应该添加一个@user.events.new地方,如果是这样,我在哪里放哪个用户和哪个事件的参数?
我在我的应用程序控制器中,我有一个url字符串.如何告诉应用程序在新窗口中打开浏览器中的URL.有没有办法将目标设置为空白?
例如
def link
@url = 'www.google.com'
****??? Open @url ?? *** with target blank?
end
Run Code Online (Sandbox Code Playgroud) 我正在运行一个rails项目,我正在显示一个通常太长的文本字段.如果有任何我可以调用的东西只在视图页面上显示20个单词或120个字符?
我有一个很好的导航应用程序......我想让用户能够上传和流式传输上传的mp3.
目前我通过Paperclip上传到Amazon S3,我的网站托管在heroku上.
我可以完美地上传mp3,所以现在我只是想找一种方法来支持播放实际的文件.
是否有任何好的宝石/插件可以解决以前曾经使用过的这个问题?
我应该继续尝试弄清楚如何使用HTML5吗?
任何建议或意见?
我知道Chronic是一种将语言转换为数据库计算格式的自然语言解析器,但我想知道如何将这些数据转换回人类可以轻易理解的东西.
例如:
Chronic.parse('today') => 2011-02-17 17:30:00 -0500
Run Code Online (Sandbox Code Playgroud)
那么有没有办法采取"2011-02-18 20:00:00"并将其表示为"2011年2月18日星期五晚上10点"?
基本上与慢性相反?
我试图以表格的形式在我的模型中显示对象,但是我很难动态地创建行和列.
我有一个名为Pictures的模型,目前我在looooong列表中显示所有这些模型.
<% for picture in @pictures %>
<p><%= image_tag(picture.url) %></p>
<% end %>
Run Code Online (Sandbox Code Playgroud)
如何将其转换为带有轨道的视图中的表格?
<table>
<tr>
<% for picture in @pictures %>
<td>
<%= image_tag(picture.url) %>
</td>
** Here's where I'm confused..How can I write after 6 cells create a new row?? *****
<% end %>
</table>
Run Code Online (Sandbox Code Playgroud)
所以问题实际上与如何在视图中分解这种类型的数据有关.
我正在处理此记录插入/删除我不确定执行查询的语法是什么.
我有一个用户模型和一个事件模型.我创建了一个名为Personal的连接表,用于存储user_id,以及用户喜欢的任何事件的event_id.
我在我的事件控制器中创建了一个"添加"方法,所以每当有人点击它时运行到那个并执行我正在尝试开发的创建逻辑.该操作与我添加到显示所有事件的网格中的额外列相关联.
用户模型=>
has_many :personals
Run Code Online (Sandbox Code Playgroud)
事件模型=>
has_many :personals
Run Code Online (Sandbox Code Playgroud)
个人模特=>
belongs_to :user
belongs_to :events
Run Code Online (Sandbox Code Playgroud)
我以为它会像=>
@user = User.find(session[:user_id])
@event = Event.find(params[:id])
# Personal.new = User.Event?
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?
我有一组称为"任务"和"帖子"的资源,并且彼此之间存在has_and_belongs_to_many(HABTM)关系.
还有一个连接其值的连接表.
create_table 'posts_tasks', :id => false do |t|
t.column :post_id, :integer
t.column :task_id, :integer
end
Run Code Online (Sandbox Code Playgroud)
所以我的问题是如何检查从@ post.tasks创建的数组中是否存在特定任务的id?
irb(main):011:0> @post = Post.find(1)
=> #<Post id: 2, comment: "blah blah", created_at: "2011-10-18 03:40:30", updated_at:
irb(main):012:0> @post.tasks
=> [#<Task id: 1, description: "Test 1", created_at: "2011-10-18 03:
22:05", updated_at: "2011-10-18 03:22:05">, #<Task id: 3, description: "Test 3",
created_at: "2011-10-18 03:22:21", updated_at: "2011-10-18 03:22:21
">]
Run Code Online (Sandbox Code Playgroud)
所以我的问题是什么写的红宝石方式"@task = Task.find(2)"存在于@ post.tasks中,如果是这样,返回true还是false?