[英]Ruby on Rails - How would I add a image uploader to the simple_form Gem
[英]How would I display the time ago that a post was made with the simple_form gem - Ruby-on-Rails
我希望能夠顯示在我的Rails網站上發布帖子的日期,如何顯示一天之內的任何內容,例如“ 1天前”等和“小於一天前”。
我正在使用simple_form gem,並且對Rails來說是個新手,所以不確定該怎么做。 任何幫助,將不勝感激!
我的代碼如下:
house_controller.rb-
class HousesController < ApplicationController
def index
@houses = House.page(params[:page]).per(20).order(created_at: :desc)
end
def new
@house = House.new
end
def create
@house = House.new(params.require(:house).permit(:title, :price, :location, :beds, :property, :available, :description, :image))
if @house.save
redirect_to root_path
else
render "new"
end
end
end
house.rb-
class House < ActiveRecord::Base
validates :title, presence: true
validates :price, presence: true
validates :location, presence: true
validates :property, presence: true
validates :beds, presence: true
validates :available, presence: true
validates :description, presence: true
validates :image, presence: true
has_attached_file :image, styles: { large: "600x600", medium: "300x300", thumb: "150x150#" }
validates_attachment_content_type :image, content_type: /\Aimage\/.*\Z/
end
index.html.erb-
<% @houses.each do |house| %>
<div class="house">
<%= image_tag house.image.url(:large) %>
<h2><%= house.title %></h2>
<h2>£<%= house.price %></h2>
<p><%= house.location %></p>
<p><%= house.beds %></p>
<p><%= house.available %></p>
<p><%= house.property %></p>
<p><%= house.description %></p>
</div>
<% end %>
new.html.erb-
<%= simple_form_for @house, html: { multipart: true } do |form| %>
<%= form.input :title, label: "House title" %>
<%= form.input :price, label: "House price" %>
<%= form.input :location, label: "Town, County" %>
<%= form.input :beds, label: "No. of Bedrooms" %>
<%= form.input :available, label: "House available from" %>
<%= form.input :property, label: "Property Type e.g Flat, Bungalow" %>
<%= form.input :description, label: "Describe your house" %>
<%= form.input :image, as: :file, label: "Image of house" %>
<%= form.button :submit %>
<% end %>
如果我正確理解了您的問題,則可以使用rails-timego gem,與表單無關:
https://github.com/jgraichen/rails-timeago
<%= timeago_tag @house.created_at, :nojs => true, :limit => 1.day.ago %>
如果設置正確,您將通過javascript自動更新時間。 一分鍾前,2分鍾前等。直到1天,然后是1天前,2天前等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.