roleの管理機能を作ろうと思ったけど、
眠いから止めたwww
つうか、ね?
寝ぼけてる頭で、DBのリレーションとか、理解できないっすよwww
なんすか、habtmってwww
んで、でも、やらなきゃいけないことは、やらなきゃいけないんで、とりあえず、Userのアクション作っといた。
app/controllers/users_controller.rb
+ def index + @users = User.find(:all) + end + + def show + @user = User.find_by_id(params[:id]) + end + + def edit + @user = current_user + end + + def update + @user = User.find(current_user) + if @user.update_attributes(params[:user]) + flash[:notice] = "User updated" + redirect_to(user_path(current_user.id)) + else + render(:action => 'edit') + end + end
app/views/users/_user.html.erb
+<tr> + <th> + <%= user.id %> + </th> + <td> + <%= link_to(user.nickname, user_path(user.id)) %> + </td> + <td> + <%= user.email %> + </td> + <td> + <%= user.full_name %> + </td> + <td> + <%= user.state %> + </td> + <td> + <%- if current_user.id == user.id -%> + <%= link_to('Edit', edit_user_path(user.id)) %> + <%- else -%> + - + <%- end -%> + </td> +</tr>
app/views/users/edit.html.erb
<% form_for(:user, :url => user_url(@user), :html => { :method => :put }) do |f| %> <dl> <dt> Nickname: </dt> <dd> <%= f.text_field(:nickname, :size => 60) %> </dd> <dt> Family_name </dt> <dd> <%= f.text_field(:family_name, :size => 60) %> </dd> <dt> middle_name </dt> <dd> <%= f.text_field(:middle_name, :size => 60) %> </dd> <dt> Given_name </dt> <dd> <%= f.text_field(:given_name, :size => 60) %> </dd> </dl> <%= submit_tag('Save') %> <% end %>
app/views/users/index.html.erb
+<table> + <thead> + <tr> + <th> + ID + </th> + <th> + Nickname + </th> + <th> + Email + </th> + <th> + Full Name + </th> + <th> + Status + </th> + <th> + Action + </th> + </tr> + </thead> + <tbody> +<%= render(:partial => 'user', :collection => @users) %> + </tbody> +</table>
app/views/users/new.html.erb
<%= f.password_field(:password_confirmation) %></p> +<p><%= label_tag('family_name', 'Family Name') %><br/> +<%= f.text_field(:family_name) %></p> + +<p><%= label_tag('middle_name', 'Middle Name') %><br/> +<%= f.text_field(:middle_name) %></p> + +<p><%= label_tag('given_name', 'Given Name') %><br/> +<%= f.text_field(:given_name) %></p> + + <p><%= submit_tag('Sign up') %></p>
app/views/users/show.html
+<table> + <thead> + <tr> + <th> + ID + </th> + <th> + Nickname + </th> + <th> + Email + </th> + <th> + Full Name + </th> + <th> + Status + </th> + </tr> + </thead> + <tbody> +<%= render(:partial => 'user', :object => @user) %> + </tbody> +</table>
あと、layout作っといた。
app/views/layouts/application.html.erb\
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja"> +<head> + <title>untitled</title> + <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> + <meta http-equiv="Content-language" content="ja" /> + <meta http-equiv="Content-style-type" content="text/css" /> + <meta http-equiv="Content-Script-Type" content="text/javascript" /> + <meta name="Keywords" lang="ja" content="hogehoge" /> + <meta name="Description" content="hogehoge" /> + <meta name="copyright" content="Copyright © I am" /> + <meta name="Reply-to" content=""> + <meta name="Robots" content="INDEX,FOLLOW" /> + <link href="/favicon.ico" rel="SHORTCUT ICON" /> + <%= stylesheet_link_tag('scaffold') %> + <%= javascript_include_tag(:defaults) %> +</head> + +<body> +<%= render(:partial => "users/user_bar") -%> +<%= flash[:error] -%> +<%= flash[:notice] -%> +<%= yield %> + +</body> +</html>
んで、他のプロジェクトで生成した、public/stylesheets/scaffold.cssをぶっこ抜いてきて、放り込んどいた。
おk。