我尝试使用simple_form生成for。我在Gemfile中有gem,运行bundle install
和generate simple_form:install
这是new.html.erb:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<% simple_form_for @post do |f| %>
<%= f.input :image %>
<%= f.input :caption %>
<%= f.button :submit %>
<% end %>
</body>
</html>
我的post_controller.rb
class PostsController < ApplicationController
def index
end
def new
@post = Post.new
end
end
我的模特post.rb:
class Post < ActiveRecord::Base
validates :image, presence: true
has_attached_file :image, styles: { :medium => '640x'}
validates_attachment_content_type :image, :content_type => /\Aimage\/.*\Z/
validates :image, presence: true
end
我的routes.rb:
Rails.application.routes.draw do
resources :posts
root 'posts#index'
end
Test
之类的内容时,我可以在浏览器中看到测试 我无法弄清楚我的代码有什么问题,有什么想法吗?提前致谢
答案 0 :(得分:0)
我猜您在此代码中错过了=
:<% simple_form_for @post do |f| %>
。
您可以按如下方式执行此操作:
<body>
<%= simple_form_for @post do |f| %>
<%= f.input :image %>
<%= f.input :caption %>
<%= f.button :submit %>
<% end %>
</body>
答案 1 :(得分:0)
您可以参考此链接https://github.com/plataformatec/simple_form,他们使用的示例中有<%= simple_form_for @user do |f| %>