【RoR】Ruby on Rails Part12
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん
2011/07/19(火) 13:44:46.30ID:zxrusyvr【Ruby】Ruby on Rails Part11
http://hibari.2ch.net/test/read.cgi/php/1292032736/
■参考サイト
<英語>
本家:http://rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
http://ruby-toolbox.com/
http://rubygems.org/
http://agilewebdevelopment.com/plugins/top_rated
<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
http://twitter.com/dhh
http://www.loudthinking.com/
0893nobodyさん
2011/10/22(土) 12:34:35.20ID:x4TX45Mm通常はentriesはcreated_at降順で並べたいのですが、
blogs.status=1の時のみ、created_at昇順で並べたい、という要件があります。
素直に実装すると、entriesを表示する全ての箇所で、
if entries.blog.status = 1
entries.order('created_at DESC').each {}
else
entries.order('created_at').each {}
end
のようなコードになります。
これが結構煩わしいので、場合分けしなくてもよい方法を探しています。
entryモデルの中でscopeを定義しようとしても、
scope定義の中からblogを参照する術が無いし、
blogモデルのhas_many :entries, :orderで指定しようとしても、やはりblog.statusを参照する術がありません。
何か良い方法は無いでしょうか。
0894nobodyさん
2011/10/22(土) 12:48:52.13ID:???if blog.status == 1
blog.entries.order() # order A
else
blog.entries.order() # order B
end
みたいにすれば良いのでは。
scope 使うならjoinして中で判別したら良いし
0895893
2011/10/22(土) 13:20:08.08ID:x4TX45Mmありがとうございます!こんなに早くレスを頂けるとは。。
すいません。コードの方は単純な間違いです。
いずれにしても場合分けが毎回発生するのが問題でした。
そしてscopeにjoinが使えることを初めて知りました。
これで解決できそうです。ありがとうございました。
0896nobodyさん
2011/10/22(土) 15:55:55.18ID:???http://***.com/歴代の総理大臣
というように日本語が含まれたURLを作る場合に、
map.connect "歴代の総理大臣"
と記述して動くサーバーと、
map.connect "%E6%AD%B4%E4%BB%A3%E3%81%AE%E7%B7%8F%E7%90%86%E5%A4%A7%E8%87%A3"
とエンコードしないと動かないサーバーがあります
この辺の挙動の違いはおそらくRailsの問題ではなくてサーバー側の設定だとは思うのですが、何かアドバイスいただけると幸いです
使っているサーバーはCentOSやローカルのMacだったりとバラバラです
0897nobodyさん
2011/10/22(土) 17:15:23.46ID:???0900896
2011/10/22(土) 20:49:54.37ID:???>>897
今までは非エンコードとエンコードの両方をroutes.rbに記述して対応していました
そうすることで開発用ローカル(エンコードのみ動く)と実機サーバー(非エンコードのみ動く)の両方で同じroutes.rbを使えたからです
ただ、最近借りた海外VPSでは非エンコードとエンコードのどちらも全く受け付けないので、根本的な解決を図ろうと質問しました
0901nobodyさん
2011/10/23(日) 14:04:51.81ID:???ubuntu 11.10
ruby 1.9.1
gem --version
Invalid gemspec in [/var/lib/gems/1.8/specifications/json-1.6.1.gemspec]: invalid date format in specification: "2011-09-18 00:00:00.000000000Z"
Invalid gemspec in [/var/lib/gems/1.8/specifications/tilt-1.3.3.gemspec]: invalid date format in specification: "2011-08-25 00:00:00.000000000Z"
とエラーがでるのですが、、、
どうしてでしょうか?
0902nobodyさん
2011/10/23(日) 15:50:11.34ID:FKiWFVH20903nobodyさん
2011/10/23(日) 16:01:51.71ID:FKiWFVH2rubygemsが利用する、ruby付属のYAMLパーサの問題のようなので、
お仕着せ環境で回避するには、該当specificationの日付を直接修
正してしまう(時間パートを丸ごと削除)というのがぐぐるといっぱい出
てくる。
0904896
2011/10/24(月) 17:34:01.20ID:???例えば「あ」という日本語URLをroutes.rb内でデコードする際に、
「%e3%81%82」になる環境と「%E3%81%82」 になる環境があるようです(大文字or小文字)
ruby/rails/passengerのバージョンを全く同じバージョンにして複数の環境で試してみたところ、
CentOS 5.5環境では大文字に、CentOS 6では小文字になりました
何が原因なのかは結局わかりませんが一応自己解決しました
0905nobodyさん
2011/10/25(火) 12:15:29.24ID:???Usersテーブル(id, name)
Messagesテーブル(user_id, from_id, body)
があるとして簡易メッセージ機能を実装したいとします。
その際にリレーションを張るとしたら、
Messageテーブルから見たとき
user_idが送信宛先ユーザーのid、
from_idが送信元(送信者)のidとして
それぞれどのようにモデルには記述すべきでしょうか?
どちらも同じUsersテーブルにリレーションを張ることになります。
通常であれば テーブル名の単数形_idのフィールドを用意するのでしょうが
この場合は
送信宛先、送信元ともにUsersテーブルなので重複してしまいます。
0906nobodyさん
2011/10/25(火) 14:15:16.47ID:???0908nobodyさん
2011/10/25(火) 15:09:22.88ID:???class Message < ActiveRecord::Base
belongs_to :user
belongs_to :from, :class_name => 'User'
end
0910nobodyさん
2011/10/25(火) 18:56:31.32ID:???0912nobodyさん
2011/10/25(火) 20:37:49.79ID:8ijHAbC2自己参照結合
0914nobodyさん
2011/10/26(水) 04:03:35.48ID:V3wQJwQnhttp://wiki.usagee.co.jp/ruby/rails/RailsGuidesをゆっくり和訳してみたよ/Active%20Record%20Associations
自己結合(Self Joins)
0916nobodyさん
2011/10/26(水) 14:12:59.28ID:???以下のようなモデルを作るとします。
$ rails g scaffold Product name:string price:float url:string
$ rake db:migrate
そして、Productモデルクラスでinitializeメソッドを追加します。
class Product < ActiveRecord::Base
def initialize
@foo = 1
end
end
そうすると、scaffoldの画面で新しいProductオブジェクトを作ろうと「New Products」リンクをクリックすると、
You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.[]
というようなエラーが出てしまいます。
ちなみにinitializeメソッドをコメントアウトすると治ります。
どうしてinitializeメソッドを追加するとこうなってしまうのでしょうか?
0917nobodyさん
2011/10/26(水) 14:14:26.05ID:???initialize メソッドは Product.new のときに呼ばれるメソッドなので、
それを上書きしちゃったらダメ
0919nobodyさん
2011/10/26(水) 14:42:11.71ID:???どこに疑問に思う余地があるんだよ
0920nobodyさん
2011/10/26(水) 20:50:00.49ID:NrqfyF3vことになるだろうし、AR::Baseのサブクラスなら after_initialize や after_find
というコールバックがあるな。
0921nobodyさん
2011/10/27(木) 06:29:21.47ID:???コンストラクタはinitializeです、ここで初期化しますってのをRubyの本で読んだ後に、ARでそれやったら動かないみたいなもんだから。
0922nobodyさん
2011/10/27(木) 10:03:32.64ID:???ごまかせる話ではないような
さすがに継承も知らん、という状態だとコードはほとんど書けないだろうし
0923nobodyさん
2011/10/28(金) 11:37:16.96ID:???SNSサイト
25テーブル 150カラム
遷移ページ 30
サーバー構築手数料こみこみ(ハードウェア代は抜きとして)
でいくらくらいが妥当かな?
0924nobodyさん
2011/10/28(金) 11:49:56.41ID:???0925nobodyさん
2011/10/28(金) 12:06:20.25ID:???0926nobodyさん
2011/10/28(金) 12:10:48.16ID:???作業範囲、サービス品質などによってピンキリ
というか、そんなざっくり論を展開するような顧客の案件はどこも請けてくれない
要はビジネスに向いてないってことだ
0927nobodyさん
2011/10/28(金) 12:13:36.16ID:???こんなとこで聞かないで、素直に開発会社に話持ってって見積頼めばええやん
0928nobodyさん
2011/10/28(金) 12:48:11.59ID:???0929nobodyさん
2011/10/28(金) 12:56:24.53ID:???まともな開発会社が分からないなら人脈使って探せ
人脈もないならビジネス失敗は確定だからさっさと手を引け
0932nobodyさん
2011/10/28(金) 13:19:04.29ID:???学生バイトに頼むなら分からんでもないが
0933nobodyさん
2011/10/28(金) 14:31:41.71ID:F7F0tBhsGrouptube (グループチューブ) ソーシャルネットワーキングサイトのASPサービス
http://grouptube.jp/
月額たったの840円!
http://sample.grouptube.jp/
0934nobodyさん
2011/10/28(金) 14:38:28.27ID:???http://gigazine.net/news/20110408_facebook_opencompute/
Facebook、ユーザー数が8億人を突破したと発表 - ITmedia ニュース
http://www.itmedia.co.jp/news/articles/1109/26/news030.html
月間アクティブユーザー数3.8億人(Inside Facebook 2/1)
サーバ台数6万〜10万台(推定)
1秒5000万リクエスト。
http://www.slideshare.net/naoto111/facebook-4732201
0935nobodyさん
2011/10/28(金) 21:31:22.08ID:???.htaccess 書き換え以外に rails で完結する方法はありませんでしょうか?
0936nobodyさん
2011/10/28(金) 21:55:14.23ID:???ほんとはApacheの設定とかで飛ばした方が良いけど。
0937nobodyさん
2011/10/28(金) 22:21:48.09ID:???ありがとうございます。
routes 書き換えは routes.rb をそのまま置き換え/書き換えという認識であっていますでしょうか?
0938nobodyさん
2011/10/28(金) 23:17:39.62ID:???0939nobodyさん
2011/10/29(土) 12:46:03.56ID:???�@ユーザー情報のメインテーブル(Mains)
�Aユーザー情報のサブテーブル(Subs)
�Bユーザーの投稿ポストテーブル(Posts)
の3つがあるとして
�Aサブテーブル(Subs)のNameカラムにユーザー名が格納。
その場合 Subsのmain_idがMainsのidに繋がって
モデルは↓
Mains has_one Subs
Subs belongs_to Mains
になると思うんだけど
Postsからユーザー名(�ASubsのName)を引っ張り出すときは
Postsのsub_idとSubsのidを繋げばいいですか?
それとも
Postsのsub_idとSubsのmain_idを繋ぐべき?
結局のところ
Subsの id = main_id
だから、どちらでもいいんだろうけど
どういった作り方が普通なのか気になります。
0940nobodyさん
2011/10/29(土) 13:25:01.65ID:???ショートカットという意味でPostにsub_id持つのは構わないけど、あまりやらないかな。
Postにはmain_id持たせてるから、そこから辿る。それだとこんな感じ。
Post.where(なんちゃら).includes(main: :sub)
で、個々のpostから名前をviewとかで引くなら、
post.main.sub.name
みたいになって長いから、Mainで:nameをdelegateする。
delegate :name, to: :sub
そうすると
post.main.name
と書ける。
もっと短くしたければ、またdelegateするなりメソッド足して工夫して。
上とは別に、省エネするなら、Postにattr_accessor で:name 足して、find_by_sql なりで引いて来る。この場合はincludes()しなくて良くなる。
post.name
使えるはず。
0941nobodyさん
2011/10/29(土) 13:28:05.54ID:???0945nobodyさん
2011/10/29(土) 14:27:29.35ID:???ここはRails全般のスレ。
質問に回答するもしないも見ている人達次第。
そいつは誰にも相手にされてないようだし、
罵倒するレスしかつけられない生産性のない可哀想な存在だから
相手にしないほうがいい。
0946nobodyさん
2011/10/29(土) 15:26:02.35ID:???↑これを参考に作ってます。
(実際はRails 3.1.1を使用。)
Users has_many Postsな状態で、
/users/123/posts/456
を
/user/hiroyuki/2011-10-29
みたいにしたいと思ってます。
match 'user/:user_name/:year-:month-:date' => 'posts#show'
routes.rbとかをがっつりいじればいくらでもできそうだけれど、
もっとスマートなやり方ありませんか?
0947nobodyさん
2011/10/29(土) 15:36:34.58ID:???0950nobodyさん
2011/10/29(土) 16:58:34.89ID:???routes.rb はがっつりいじるもの
何でも resources でやろうとするのは何でも scaffold でやろうとするようなもん
0951nobodyさん
2011/10/29(土) 17:43:50.36ID:???仮に resources などで簡潔に書きたいと思ってるなら、Rails の敷いたレールの上を
走るようにすればいい
今回のようにURL設計でレールから外れようとしているのに、それでも簡潔さを求める
のはRailsの根本思想からはありえないことです
ある意味、Railsは宗教です
DB設計にせよURL設計にせよMVCにせよ、「こうするべき」という教義を持っており、
教義に従う人にだけメリットを与えます
そこから外れたいなら相応の労力が必要なことに文句を言ってはいけません
0952nobodyさん
2011/10/29(土) 18:06:24.81ID:I8tdw7a20953nobodyさん
2011/10/29(土) 18:10:32.06ID:???0954nobodyさん
2011/10/29(土) 20:18:28.00ID:???横だけど、なんだか色々合点がいった。
ちょっと外れようとすると色々面倒なのはある意味じゃ仕様なんですね。
大したこだわりじゃないなら素直にレールに乗ってたほうが結果的に得しそうだ。
0955946
2011/10/30(日) 02:00:21.85ID:???いろいろありまして。
>>948
お元気そうで何よりです。
>>950
なるほど。
scaffoldはだいたい目に見えるからいじりやすいんですが、
routesの方は見えないところで動いてる部分が多くて。
0956946
2011/10/30(日) 02:02:32.00ID:???すごいわかりやすい!
すると、今回の場合は自分で自分用のrailを敷き直す覚悟が必要そうですね……。
サンスコ、頑張ってみまする。
>>952
おお、to_paramよさそうですね。
validates_format_ofと組み合わせて使おうと思います。
0957nobodyさん
2011/10/30(日) 10:18:03.46ID:???分からなければ従っておいた方がいい。
0958nobodyさん
2011/10/30(日) 22:29:28.09ID:???> routesの方は見えないところで動いてる部分が多くて。
だったらテストをしっかり書こうよ
>>956
> すると、今回の場合は自分で自分用のrailを敷き直す覚悟が必要そうですね……。
そんな覚悟を固めるより、設計に口出す方が楽だよ
少なくともRails開発者が押し付ける教義は非常に多くの優秀な人たちののレビューを
通ってきているわけだから妥当性は相応に強い
0959nobodyさん
2011/10/31(月) 00:58:32.76ID:???0960nobodyさん
2011/10/31(月) 18:03:43.50ID:???dejan/auto_html - GitHub
https://github.com/dejan/auto_html
auto_link("Go to http://www.rubyonrails.org and say hello to [email protected]")
# => "Go to <a href=\"http://www.rubyonrails.org\">http://www.rubyonrails.org</a> and
# say hello to <a href=\"mailto:[email protected]\">[email protected]</a>"
http://apidock.com/rails/ActionView/Helpers/TextHelper/auto_link
0961946
2011/11/01(火) 03:34:44.77ID:???趣味で作ってるだけなので、設計者=実装者です。
とりあえずrailに乗っかった形で一度完成させてから、あれこれいじる事にしました。
0962nobodyさん
2011/11/01(火) 12:03:31.55ID:???それにjsファイルの中でerbを使うとかうぜぇ!
0963nobodyさん
2011/11/01(火) 12:05:00.39ID:???0964nobodyさん
2011/11/01(火) 12:14:37.64ID:???ロックがかかっていなければ更新処理→検索処理、
かかっている場合は更新が終わるのをまって(そして自身の更新はスキップして)検索処理としたいのですが、
ロックがかかっているかどうか調べるにはどうしたらよいのでしょうか?
if ( ロック中か?) do
# ロック解除されるまで待つ/更新処理はしない
LockTable.find(1, lock => true).lock! false
else
locked = LockTable.find(1, :lock => true)
# 幾つかのモデルにまたがる更新処理....
locked.lock! false
end
# モデル内容の検索処理...
0965nobodyさん
2011/11/01(火) 14:15:30.60ID:???.js は省けた気がする
あとerbにするのは確かにうぜえので変数的なものは
headタグ埋め込んで参照するようにしてるわ。
0966nobodyさん
2011/11/01(火) 15:25:40.80ID:???単に負荷で遅くなっているか等を識別する手段は無かったと思う(DBレベルで)。
ただ、Oracleなんかは 読取lockの待ち時間を設定できて、
その時間を超えた場合は、例外を戻すように出来るので、
それをRails側でキャッチしてゴニョゴニョすることは出来るかも。
for update nowait なら、全く待たずに例外投げられるので
それを利用して、ロック中である、と識別させる手もある。
lock("for update nowait") と書けばいい。
ただMySQLは、v4系列までは読取lockの待ち時間は設定できないし、
nowaitオプションもなかった気がする。単にグローバルな「待ち時間」で
制御するしかないけど、これだとサーバが負荷のせいでレスポンス待ちなのか、
lockのせいなのか等の識別は出来ない。v5はどうだか分からない。
0967nobodyさん
2011/11/01(火) 15:58:03.53ID:???回答ありがとうございます。
なるほど、ここら辺はDB依存になる部分なんですね。
バックエンドがMySQLでして、グローバルなオプションの変更はちょっと影響範囲の判断がつかないので
今回は違う方法を考えてみます。
それほどクリティカルな処理の部分ではないのと、どちらにしろロック待ちはするということで
前回の更新処理時刻+n秒以内なら更新処理スキップみたいな感じでいこうと思います。
0969nobodyさん
2011/11/02(水) 01:28:27.52ID:???0970nobodyさん
2011/11/02(水) 08:38:04.18ID:???すぐ分かるんだな
0971nobodyさん
2011/11/02(水) 10:39:04.96ID:???ruby 1.8.7
gem 1.3.6
Rails 3.1.1
rails generate migration CreateTables
とすると、
/usr/lib/ruby/gems/1.8/gems/execjs-1.2.9/lib/execjs/runtimes.rb:47:in `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
from /usr/lib/ruby/gems/1.8/gems/execjs-1.2.9/lib/execjs.rb:5
from /usr/lib/ruby/gems/1.8/gems/coffee-script-2.2.0/lib/coffee_script.rb:1:in `require'
from /usr/lib/ruby/gems/1.8/gems/coffee-script-2.2.0/lib/coffee_script.rb:1
from /usr/lib/ruby/gems/1.8/gems/coffee-script-2.2.0/lib/coffee-script.rb:1:in `require'
from /usr/lib/ruby/gems/1.8/gems/coffee-script-2.2.0/lib/coffee-script.rb:1
from /usr/lib/ruby/gems/1.8/gems/coffee-rails-3.1.1/lib/coffee-rails.rb:1:in `require'
from /usr/lib/ruby/gems/1.8/gems/coffee-rails-3.1.1/lib/coffee-rails.rb:1
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `require'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `require'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `each'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `require'
などなど、、、、、
というエラーが出るのですが、検索してみたのですが、対処方法かせわかりません。
詳しい方、教えていただけないでしょうか?
0972nobodyさん
2011/11/02(水) 11:52:23.04ID:???いくらなんでも古すぎるんじゃないか
話はそれからだ
0974nobodyさん
2011/11/02(水) 12:12:00.19ID:???0975nobodyさん
2011/11/02(水) 12:26:35.57ID:???rails3.1をいれたんだろうな
これに限らず、後方互換性がクソだから常に最新について行く根性が一番重要
初心者お断りって感じだ
0976nobodyさん
2011/11/02(水) 12:45:35.77ID:???0977nobodyさん
2011/11/02(水) 12:49:49.52ID:???0979nobodyさん
2011/11/02(水) 13:28:24.42ID:???0980nobodyさん
2011/11/02(水) 16:13:40.63ID:???0981nobodyさん
2011/11/02(水) 17:18:13.62ID:???0982nobodyさん
2011/11/02(水) 17:51:18.27ID:???http://c-brains.jp/blog/wsg/11/11/02-154822.php
https://addons.mozilla.org/ja/firefox/addon/xss-me/
https://addons.mozilla.org/en-US/firefox/addon/sql-inject-me/
https://addons.mozilla.org/en-US/firefox/addon/hackbar/
http://nmap.org/
http://www.rbl.jp/svcheck.php
0983nobodyさん
2011/11/02(水) 18:26:04.40ID:???どうしてもというならjruby使えば良い
0985nobodyさん
2011/11/02(水) 20:34:58.27ID:???エラーメッセージの通り、JavaScript runtime がない
何を入手すればいいかは、エラーメッセージの通り、https://github.com/sstephenson/execjs を見ればいい
教えてクンがどうとか煽るのはどうかと思うが、エラーメッセージも読まない状態で
質問するようだと、その煽りもある程度首肯せざるをえない
0986nobodyさん
2011/11/02(水) 21:50:04.09ID:???http://rails-erd.rubyforge.org/
JUDEで描いたクラスをそのままRuby on Railsで動かすプラグイン:CodeZine
http://codezine.jp/article/detail/2377
0987nobodyさん
2011/11/02(水) 21:54:23.93ID:???http://blog.s21g.com/articles/318
http://www13.atwiki.jp/maimuzo/pages/41.html
Railsで、マイグレーション作成時に、カラムにコメントを設定し、それをデータベースに設定する ColumnComments という便利なプラグイン
http://ishikawa.r-stone.net/2008/08/rails-migration-column-comment.html
[Rails] query-reviewerでRailsアプリのボトルネックを見つける
http://d.hatena.ne.jp/tkng/20080811/1218442298
SpecialWarningというプラグイン
http://d.hatena.ne.jp/authorNari/20090205/1233840189
N+1問題などを監視してパフォーマンスを改善するRailsプラグインBullet
http://blog.digital-squad.net/article/149685338.html
複合キー
compositekeys ActiveRecord Composite Primary Keys
http://compositekeys.rubyforge.org/
0988nobodyさん
2011/11/03(木) 00:32:46.90ID:???デフォルトですと、rails g controllerした際にjsとcssが
assets/javascriptsとassets/stylesheetsに出来るかと思われますが、
application.jsとapplication.cssのrequire_tree . によって
全てのcontrollerに対するファイルが1つに連結されてしまいます。
Asset Pipelineの目指すところからすれば1つにして request 数を減らすのは当然ではありますが、
controller毎に読み込むjsとcssは異なる、特にcssについては異なる方が多いかと思われます。
controller毎に読み込むものを分けるためには、require_tree . を削除し、欲しいものをinclude_tagなりlink_tagで呼ぶしかないのでしょうか。
そうして欲しい場合、require_tree . がデフォルトで存在し、
かつassets/javascriptsとassets/stylesheetsに自動で生成される理由は何でしょうか。
0989nobodyさん
2011/11/03(木) 00:46:57.39ID:???コントローラごとに分ける必要性よりリクエスト回数を減らすメリットの方が大きいって
ことなんだろうな
css を全部読み込んだ場合でも、コントローラごとに分けられてるようにすることは
難しくないし
・id や class に必要に応じてコントローラ名をつける
・application.html.erb の body にコントローラ名クラスをつける
んで、css 内で、body.<コントローラ名> 配下に内容を書く(scss なら楽勝でしょ)
みたいにね
(ちなみに俺は前者を使ってるが特に問題になることはない)
0990nobodyさん
2011/11/03(木) 01:29:55.04ID:???返信ありがとうございます
仰る通り、恐らくそれが最良であるとは思います。
しかし、scaffoldで生成されるstylesheetなどは何も考えずにただ各要素について書かれていますし、
一体どのようにcontroller毎に分けることを意図して設計されているのかが気になって仕方がありません。
設計思想など知った事ではないから直接英語で聞いて来いと言われてしまえばその通りな訳ですが・・・
皆さんがどのようにして分けているのかを知りたくなった次第です。
レス数が950を超えています。1000を超えると書き込みができなくなります。