我有一个"帖子"表,其中包含title和的属性body.
posts_controller.rb:
class PostsController < ApplicationController
def index
@posts = Post.search(params[:search], params[:id])
end
end
Run Code Online (Sandbox Code Playgroud)
index.html.erb:
<%= form_tag posts_path, :method => 'get' do %>
<%= text_field_tag :search, params[:search]%>
<%= submit_tag "Search", :name => nil %>
<% end %>
<hr />
<table>
<tr>
<th>Title</th>
<th>Text</th>
</tr>
<tr>
<td><hr></td>
<td><hr></td>
</tr>
<% @posts.each do |post| %>
<tr>
<td><%= post.title %></td>
<td><%= post.text %></td>
<td><%= link_to 'Show', :action => :show, :id => post.id %></td>
<td><%= link_to 'Edit', :action => :edit, …Run Code Online (Sandbox Code Playgroud) 我开始学习HAML:我无法将Flash块转换为HAML:
<% flash.each do |key, value| %>
<div class="alert alert-<%= key %>">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong><%= value %></strong>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud) 帮助我解决这个问题:
我有2个模型(管理员和用户) - >用devise创建,我有post_controller:
问题出现了:
如果我有一个型号(user.rb) - >在我的控制器中我把它:
before_filter :authenticate_user!, :except => [:show, :index]
Run Code Online (Sandbox Code Playgroud)
但我有2个模型,我希望用户可以访问帖子控制器的"显示"和"索引"操作,管理员可以访问所有操作.
我做了类似的事情:
before_filter :logged_in
.
.
.
private
def logged_in
if admin_signed_in?
else
authenticate_user!
end
end
Run Code Online (Sandbox Code Playgroud)
但我想改变我的字符串:
authenticate_user!
这样的事情:
:authenticate_user!, :except => [:show, :index]
但除了指的是before_filter之外
我怎么能这样做(没有'cancan'宝石)
我已经开始学习rails了,我想在评论中添加ajax
应使用Ajax添加注释
你能帮忙或链接到一个例子吗?
这是我的config.rb:
resources :posts do
resources :comments
end
Run Code Online (Sandbox Code Playgroud)
在post/show.html.erb中
<p><%= @post.title %></p>
<h2>Comments:</h2>
<div id='com'>
<%= render @post.comments %>
</div>
<h2>Add a comment:</h2>
<%= render "comments/form" %>
Run Code Online (Sandbox Code Playgroud)
在view/comments/_comment.html.erb中:
<p>
<strong>Commenter:</strong>
<%= comment.commenter %>
</p>
<p>
<strong>Comment:</strong>
<%= comment.body %>
</p>
<%= link_to "Del", [comment.post, comment], :confirm => 'Are you sure?', :method => :delete %>
<hr>
Run Code Online (Sandbox Code Playgroud)
在comments/form.html.erb中
<%= form_for([@post, @post.comments.build], remote: true) do |f| %>
.
.
.
Run Code Online (Sandbox Code Playgroud)
在comments_controller中:
class CommentsController < ApplicationController
def create
@post = Post.find(params[:post_id])
@comment …Run Code Online (Sandbox Code Playgroud) 请帮忙找一些下一个行为的文章.
a = 'qwer'
a = b
b << 'ty'
puts b # => 'qwerty'
puts a # => 'qwerty'
Run Code Online (Sandbox Code Playgroud)
但如果
a = 'qwer'
a = b
b = 'ty'
puts b # => 'ty'
puts a # => 'qwer'
Run Code Online (Sandbox Code Playgroud)
我知道为什么在这种情况下
我知道它运作良好,但我找不到解释 - 为什么如此
PS
如果适用 - 请提供有关此主题的文章的链接(或类似的可能我想念这样的更有趣的功能).
THN.