ボタンのテスト ここではボタン操作に対するイベントを確認している。 ボタンはinput要素のタイプの一つとして作成される。 ボタンが押された時のイベントはonclick属性で定義してもよいが、ここではそれを使わず、jQueryのハンドラで処理している。
ボタンのテスト ここではボタン操作に対するイベントを確認している。 ボタンはinput要素のタイプの一つとして作成される。 ボタンが押された時のイベントはonclick属性で定義してもよいが、ここではそれを使わず、jQueryのハンドラで処理している。
Rails4.1から導入されたEnum型で、個人的に引っかかったこと そもそもrailsのenumとは? rails4.2から導入された、簡単にいうとintegerとstring型を紐付けするものです。 マイグレーションファイルは以下の通りです。 class CreatePeople < ActiveRecord::Migration def change create_table :people do |t| t.string :name, null: false t.integer :sex, null: false, limit: 1 t.timestamps null: false end end end
class UserController < ApplicationController def new 省略 end def create user = User.create(params[:user]) end end なんとなく通りそうな気がしますが、実際はActiveModel::ForbiddenAttributesErrorというエラーが吐かれます。 このエラーはGoo●le先生などに聞くと簡単に教えてもらえるのですが、Rails4のコア機能であるStrong Parametersの仕様による「検証通ってないよー」というエラーだそうです。 詳しくはTECHSCORE BLOGのRails4 の Strong Parameters でリクエストパラメータを検証するなどを参照して下さい。 ということで、書き直したのがこちら。
Railsのリファクタリング記事です。 RailsでStrong Parametersを書くときに入力項目が多いページだと記述が多くなって「なんだかなぁ…」と思ったので、スッキリさせてみました。 テーブルからカラム名を引っ張ってゴニョゴニョして出力しています。 結論をすぐに知りたい方は後半のStrong Parametersをスッキリさせてみたへどうぞ。 Strong Parametersってなんだっけ? Strong Parametersを使ってない人はいないと信じたいのですが、確認も含めて簡単に説明しておきます。 Strong ParametersはRails4系から追加されたセキュリティを向上させるための仕組みです。 こちらで指定したパラメータ以外は受け取らないようにして、攻撃者による意図しないコードの実行を防止するセキュリティ対策。 実際にどうやって使うのか。 例えば、送信された値
やりたいこと 「このテーブルってどんなカラムがあるんだっけ?」となった時、一覧で確認したい。 けど、どこで見ればいいかわからない。 結論 db/schema.rbにありました。 ActiveRecord::Schema.define(version: 20180122145123) do enable_extension "plpgsql" create_table "users", force: :cascade do |t| t.string "name" t.integer "age" t.datetime "created_at", null: false t.datetime "updated_at", null: false end end
def article_params params.require(:article).permit(Article.column_names.map{|c| c.to_sym}) end # 許可 def article_params params.require(:article).permit(Article.column_names.map{|c| c.to_sym} + %i(hoge fuga)) end # 除外 def article_params params.require(:article).permit(Article.column_names.map{|c| c.to_sym} - %i(title)) end
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く