以下のモデルの定義がある場合の正しい説明はどれか
class Person < ApplicationRecord validates :name, length: { minimum: 2 } validates :bio, length: { maximum: 500, too_long: "最大%{count}文字まで使えます" } validates :title, length: { minimum: 10 }, allow_blank: true end
name
は2文字以上必要である
bio
は500文字以下の必要がある
title
はどんな場合でも10文字以上必要である
bio
に501文字以上入力してsave
しようとした場合、errors
のメッセージに「最大500文字まで使えます」という値がセットされる。
(Rails5系前提)
以下のコマンドについての説明で正しいものはどれか
rails generate migration AddUserRefToProducts user:references
以下の(ような)マイグレーションファイルが作られ、user_id
というカラムが追加される。
class AddUserRefToProducts < ActiveRecord::Migration[5.0] def change add_reference :products, :user, foreign_key: true end end
外部キー制約が設定されるようなマイグレーションファイルが作成される
references型とinteger型は同義である。
user_idカラムにnullは許容されなくなる
バージョン管理をしたくないファイルを定義するファイルはどれか
.config
.gitignore
.secret
.local
フレームワークについて正しいものはどれか
ライブラリと同義である
開発を効率化するための枠組みのことである
Ruby on RailsはRubyのフレームワークである
プログラミング言語(RubyやPHP)だけではWebサービスは作れない(= Railsなどのフレームワークを使わないとWebサービスは作れない)
fuga
ブランチの作成と切り替えを一挙に行いたいです。
git checkout -b fuga
git branch -c fuga
git checkout branch fuga
git c b hoge
公開鍵暗号方式についての説明で正しいものはどれか
受信者の秘密鍵で暗号化し、受信者の公開鍵で復号する
受信者の公開鍵で暗号化し、受信者の秘密鍵で復号する
送信者の秘密鍵で暗号化し、送信者の公開鍵で復号する
送信者の公開鍵で暗号化し、送信者の秘密鍵で復号する
マイグレーションファイルについて正しい記述はどれか
マイグレーションファイルを1から全て再実行するためにdb:migrate:reset
をした
マイグレーションファイルを作りdb:migrate
を行なった。その後マイグレーションファイルに誤りを見つけたので一部修正し再度db:migrate
を行なった。
マイグレーションファイルを1から全て再実行するためにdb:migrate
を実行した。
マイグレーションファイルを1から全て再実行するためにdb:reset
を実行した
公開鍵暗号方式についての説明で正しいものはどれか
SSH接続する際に必要になる概念である
公開鍵暗号方式を応用したものがディジタル署名である
SSLは公開鍵暗号方式を活用している
ssh-keygenコマンドで鍵ペアが作成され、id_rsaというファイルが公開鍵にあたる
gitのreset
コマンドについての説明で正しいものはどれか
reset --hard
はadd
のみを取り消す
reset
とreset --mixed
は同義である
reset --mixed
はadd
とcommit
を取り消す
reset --soft
はcommit
のみを取り消す
ポート番号についての説明で誤っているものはどれか
HTTPは80番ポートが使われる
HTTPSは8080ポートが使われる
SSHは22番ポートが使われる
DNSは53番ポートが使われる
次のうちWebアプリケーションの脆弱性を狙う攻撃はどれか
XSS
CSRF
SQLインジェクション
DNS
認証、認可について正しいものはどれか
本人確認は「認可」にあたるものである
サービスの利用許可は「認証」にあたるものである
IDとPWでログインするというのは「認証」にあたる
このユーザーは記事の投稿はできるが削除はできないというのは「認可」にあたる
以下の定義がある時に使えるようになるメソッド(=エラーにならない)はどれか
class Book < ApplicationRecord belongs_to :author end
book.author book.author = author
book.authors.build book.authors.create
book.author_id
book.author.id
他の開発者が新しくfoo
ブランチを作ってGitHubにプッシュしました。そのブランチをまるっと自身のローカルにも持ってきて動作確認してみたいです。
git remote pull origin foo
git pull origin foo
git merge foo
git fetch
のあとgit checkout -b foo origin/foo
退避した変更を元に戻したいです。
git escape pop
git escape fetch
git stash pop
git stash fetch
URLについての説明で誤っているものはどれか
プロトコルの情報が必要である
ドメインの情報が必要である
WebにおいてはHTTP, HTTPSが基本的には使われる
IPアドレスではアクセスできない
インデックスについて説明したものはどれか
add
されたものがインデックスに入ってくるイメージ
commit
するとリポジトリに反映される
一度インデックスに入れてしまうと取り消すことはできない
git index
でインデックスにあるファイルを全て確認できる
ブラウザについての説明として正しいものはどれか
HTML文書を解釈しWebページを表示する
いわるゆ「サーバ」に該当するものである
IEやChromeなどにあたるものである
クライアントからのリクエストをもとに、ブラウザが適切なHTMLを組み立てて返却する
JSONについて正しいものはどれか
プログラミング言語の一つである
フォーマットの一つである
開始タグと閉じタグによって表現される
文字列と数値は表現できるが配列は表現できない
以下の定義に関して正しい説明はどれか
class User has_many :articles end class Article belongs_to :user end
ユーザーを削除した時に記事も削除したい場合はdependent: :destroy
オプションをつける
ユーザーを削除しても記事を残しておきたい場合はdependent: :nullify
とoptional: true
オプションをつける必要がある
以下の三つはどれも同じSQLを発行する
current_user.articles.create Article.create(user_id: current_user.id) Article.create(user: current_user)
User.articles
でユーザーに紐づく記事を取得できる