【RoR】Ruby on Rails Part20©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
Ruby がなければ、とか Rails さえ登場しなければ、と考える人達は
昔から存在していた
・Python vs Ruby vs PHP vs Haskell プログラミング言語バトル part1
http://anond.hatelabo.jp/20120118220204
> 48 : デフォルトの名無しさん : 2011/11/13(日) 08:30:25.68
> 44
> Zopeが登場した当時、「RDB+PHPはもう古い、これからはOODB+ZopeがWebの中軸になる!」と
> さかんに宣伝され、雑誌でもZope特集が組まれていた
> 少なくとも自分はZopeからPythonという言語を知ったし、その時点でRubyは知らなかった
> そして、その後のORM(RDB)+Railsの出現と華々しい革新性への注目は、誰もが知っているだろう
> 今でもZopeの開発は継続されてはいるが、結果的に当初の期待が大きく裏切られたという事実は動かしがたい
> djangoとCakePHPについては実際に触っていないので憶測になるが、おそらく技術水準ではRailsと同等だろう
> しかしRailsはRailsでコミュニティの活動が活発だし、その進化は異常に早い
> Railsに何か致命的なトラブルが発生して開発が停滞する、あるいはdjangoやCakePHPから
> 何かのイノベーションが提示されでもされない限り、後発のdjangoやCakePHPがRailsに追いつくのは無理
> Railsは決して技術的に完璧なWebフレームワークではないんだけどね....(たとえばSeaSideのような.... )
> だからこそ「もしもZopeが....だったなら」という「たら・れば」感はPythonコミュニティの潜在認識になっている 脱Railsに誘導する勢力が増えてきたのは会社都合なのかね
今後、自社に入ってくるかもしれない新米エンジニア候補に
間違った道を選んでほしくないからやってるんだろうけど
それは教育コストかけて社内でやるべき Rubyの文法つかってバイナリ吐き出す高速なクリスタル言語よくない? クラウドワークスのエンジニアの若手を潰すとかいう下衆発言といい
rails界隈って露悪的でエグみが強いやつらが幅をきかせている残念な印象
技術力はしらん。どうせ大したことないだろ >>14
いやいや分散しないほうがいいでしょ
【Erlang】プログラム言語 Elixir 【BEAM】 [転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1433336300/ >>17
ブラックなIT土方代表のJava、PHP様たちには到底かないませんけどね >>20
うんこと腐ったミソと普通のミソがあるとしたら
railsは腐ったミソだな プログラミングElixir、2016
Ruby界隈から、名著が出た。
著者は「プログラミングRuby」のDave Thomas
関数型言語Elixirは、Ruby + Rails + ErlangVM で、並行処理が得意 Linux API を、Windows API に変換するので、Ubuntu64 のバイナリがそのまま動く、
Windows Subsystem for Linux (WSL) で、Railsが動くという書き込みが、プログラム板にあった
apt-get で、パッケージもインストールできる
日本語も使える端末、ConEmu。
GUI表示用のXサーバー、Xming X Server for Windows
人柱、キボンヌ rails 4.1 でバッチプログラムを作りたいんだが、
コントローラーは app/controller でもへんじゃない? フリーのサイトテンプレート落としてきてrailsで使おうとするとassetで積みがちなのは普通?
mixitupってのが動作しなくて格闘してるんだがjQuery周りが動くのとそうでないのと混在してて不便・・・ そりゃrailsは時代遅れだから徐々に腐ってきてるんだよ decoratorとhelperの用途の違いって何なんだ?
役割としては同じだけど様々なViewで横断的に使うメソッドかどうかで使い分けるって認識で良い? decorator: 特定controller-viewのpresentation層
helper: 特定でないcontroller-viewのユーティリティメソッド集
こういう認識だが railsって本当に終わったの?
今でも起用してる大手とかあるん? >>36
じゃあだいたい合ってんのかな
ありがとう ク○ウドワー○スと○ック○ッド以外でrailsにこだわっているところってまだ存在するの? QiitaとかもRailsじゃなかったっけ
使ってるところなんかたくさんあるだろ ほとんどが惰性で使って運用で常時苦しんでそうなイメージ Scalaで置き換えると楽になりますってのが流行ったな Twitter が使ってたからだろうね
そしてやっぱり苦労する、という
銀の弾丸なんてないのに フォロワーが数百万人もいる有名人がTweetする度に
そのフォロワーたちのタイムラインに対して、合計数百万回の書き込みをしなければいけないことを知って愕然とした
(この処理をTwitter社内ではFan outと呼んでいた)
こんな仕様じゃマシンリソース食いまくって大変だろう
Rubyでやるのは狂気の沙汰だし、Scalaで書き換えてもDBに対するIOなので期待するほど早くならないし… >>48
そんなアホなことしてたん?
設計ミスやろ
普通はタイムライン見るときにアクセスすれば済むだろ http://www.atmarkit.co.jp/news/201004/19/twitter.html
http://www.atmarkit.co.jp/news/201004/19/twitter05.png
> 上のようなストレートな実装では、フォロワー数が増えていくると途端にスケールしなくなる。
>メモリに載り切らずにディスクアクセスが発生し、レスポンスが落ちるためだ。
>ディスクアクセスのペナルティは大きく、1秒以下で終わるはずのページの描画が数秒かかるということになる。
>そして1つのつぶやきは平均600個もfan outされるため、秒間120万のメッセージ配送を処理する能力が求められるという計算だ。 DBの正規化では、1-fact, 1-place
DBでは、データの複製を持ったりしない。
レプリカ・キャッシュを作ることはあるけど 多対多の結合テーブル参照してIDリスト取得、そのIDリストの件数分、Tweetテーブルにアクセス
フォロー人数が10万人なら10万回
1対多の自分専用Timelineテーブルにアクセス
フォロー人数が10万人でも1回で済む
Twitterの実装は後者
前者はすぐに破綻する 大抵のWebアプリケーションは読み込みと書き込みの比率が10:1程度だから
書き込み時に大きい負荷を持っていって、読み込み時は閲覧用に高速に取得できるように組み立てておいたデータを表示するのは
よくある設計だな
NoSQLなら正規化しないし >>55
アカウント作って放置みたいな捨てアカウントにまでファンアウトしまくるのか?
どっちみち後者の方が破綻するのが速いのが目に見えてる たぶん、更新用・参照用の表は、別々
更新してしばらくすると、参照用の表に、コピーされる 更新と参照が別なのは分かるけどしばらくして同期取るのだとサービスに影響出まくると思う ウィリアム氏がOdeo内で始めた小さなプロジェクトが「Twitter」だ。
Ruby on Railsを使って2週間で最初の動くバージョンを 作り上げた
http://www.atmarkit.co.jp/news/200711/16/twitter.html 何台も浪費するようなサービスが最初から作れるとでも思ってるのかね vCPU ECU メモリ(GiB) インスタンスストレージ(GB) Linux/UNIX 料金
x1.32xlarge 128 349 1952 2 x 1920 SSD $13.338 /1 時間
https://aws.amazon.com/jp/ec2/pricing/on-demand/
CPU20コア、メモリ224GBまで選べる仮想サーバー。
http://cloud.sakura.ad.jp/specification/server-disk/#server-disk-content01-price ドワンゴ、「ニコニコ動画」のストレージにSun ZFS Storage Applianceを採用
単一ボリュームで250テラバイト以上の容量を構築できる拡張性などが評価されたという。
http://www.itmedia.co.jp/enterprise/articles/1108/22/news061.html 1.9テラバイトメモリ、Xeon4基64コアの大型インスタンス「X1.32xlarge」登場、ハードウェアトランザクションメモリにも対応。Amazonクラウド − Publickey
http://www.publickey1.jp/blog/16/19xeon464x132xlargeamazon.html AWSのS3に、500PBのデータを保存していた、Dropboxが、独自のインフラに移行したらしい >>65
成功してから作り直すの?ハア?
それにLL言語なら今ならPHP7のほうが良くないかな? 実際にFacebookやMySpceやYoutubeみたいなスタートアップを作れる確率は飛行機で事故が起きる確率と同じくらい超低い
http://www.turnyourideasintoreality.com/2014/02/dhh/ マイクロサービスの終焉 | 開発手法・プロジェクト管理 | POSTD
http://postd.cc/the-end-of-microservices/
マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices
コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155
太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題 >>72
だからといって最初から成功しない、絶対にスケールアウトしない前提でRoR決め打ちするのもどうかと思うけどな
学習コストなんてたかが知れてるのだから最初からスケールが容易なシステム上で開発するのが頭のいい人の行動だと思う >>76
プログラミングの世界にも似たような格言があるだろ
「必要になるかもしれない機能は実装するな、必要な機能だけ実装しろ」とな
そういう過剰な先回り思想は無駄になることがほとんどなんだよね スケールアウトのしやすさは機能じゃなくね?
アプリケーション側じゃなくインフラ側だし
デプロイ含めた運用のしやすさのほうに関係してる >>80
先回り思想としては一緒でしょ
スケールアウトなんて人気が出てから考えればいいのさ
どうせその頃にはあちこちガタが来て抜本的改良を考える頃だろうし Railsアプリケーションを、Heroku上で1分間125,000リクエストに対応できるようにスケーリングする | インフラ・ミドルウェア | POSTD
http://postd.cc/scaling-rails-to-125-000-requests-per-minute-on-heroku/ 最初から表現力があってスケールする言語で書けばいいじゃん
つまりJava
なんでわざわざRuby? >>84
Ruby 落として何が出てくるかと思えば Java ですか…w >>85
ふつーにrubyよりもマシな言語じゃね? >>86
Javaに表現力があると思ってる時点でお察し これ確実に、rubyはlispっ(ハア?)とか、メタプロラミングっ(ハア?)とか、イキがっている雑魚なんだろうなあ >>84
よりによってJavaかよ
煽りにしてはつまんないし、本気だとしたら救いようがないバカと思われるだけだぞ JavaはOracleったから無理だな
Javaに行くくらいならGolangにいくわ Railsでソートできるテーブルを作りたいんだけど
みんなどうやってるの? 【宇宙】ルビーやサファイアの雲が存在?
地球から1000光年先の惑星、英大学が調査
da i ly.2ch.net/test/read.cgi/ne wsplus/1481704596/ ruby bin/rails s
と
rails s
ってなんか違いあるんですかね 一つのフォームでボタンが複数ある時、
押されたボタンで処理を分岐させる簡単な方法ない? HTML5でフォームに複数のsubmit置けるようになったじゃん?
でもそれに対応してないブラウザが多い。
そんなものができる何年も前からあるRailsが
標準で複数のボタンに対応するための機能を
持ってないのが不思議なんだが ボタンごとにsubmit先のURLを変えたいという
要求にHTML5が対応したのも知らないのか? 私たちはなぜReactではなくVue.jsを選んだのか | プログラミング | POSTD
http://postd.cc/why-we-chose-vuejs-over-react/ まだRails使ってんの?
nicovi
watch/sm3721257
watch/sm8240485
watch/sm11915031 サーバーサイドはJSON吐き出すマシーンを作るという仕事に変化したので
性能高いGolangやElixir/Phoenixにシフトする会社増えてきたな
Golangが一番勢力強いが、Elixirも悪くないと思ってる
特にRailsユーザは移行しやすい React と prototype.js が被る 主に文法が冗長な所
Vue.js は jQuery っぽい直感的なシンタックスで良いよな
多分、数年後はVue.jsオンリーになってると思う https://twitter.com/btnrouge/status/820064836910317568
どこかのエセOSSプログラミング言語処理系の連中にとやかく言われたくない、という気持ちは正直言って、ある。
https://twitter.com/btnrouge/status/820284198262951936
敢えて言おう!Rubyはオープンソースではないと!(ギレン・ザビの演説風に)
https://twitter.com/btnrouge/status/820284692838522880
敢えて言おう!Rubyコミュニティはカスであると!(ギレン・ザビの演説風に)
https://twitter.com/btnrouge/status/820285576024768516
前掲の通り、オープンソース=OSIによって承認されたライセンスに基づいて配布されているソフトウェア。
Rubyは一部をOSI非承認ライセンスで配布しているため、実態はオープンソースに準じているものの、厳密にはオープンソースではない。
https://twitter.com/btnrouge/status/820302804988227587
表で「Ruby界隈の連中はオウム真理教と同じカルト教団で、教祖はMatz(まつもとゆきひろ)だ!」と英語でツイートしたが、今のところ反応なし。
日本人って、英語のツイートに対してはほぼスルーなんだね。たとえ、それが自分たちの存在自体を否定されるものであったとしても。
https://twitter.com/btnrouge/status/820420780827648000
表は例の一件で日本のRuby界隈が一斉ブロックに走ったらしく、どれだけRubyに対するHateを口にしても、誰も絡まなくなった。ある意味平和。
https://twitter.com/btnrouge/status/820421760092778497
普通、Rubyistsに向かって「お前ら全員、新興宗教だ」なんて口走ったら、それこそ間髪入れずフルボッコにされるぞ。それがなかったからな。
----------
(株)アイネスのCSVエンジニア、蓮沼賢志氏がお怒りの模様。 Rubyistコミュニティ、またやらかしたのか
こいつらいつもやらかしてるな ルビイスト何名かに対して名誉毀損で法的措置を検討しているらしい
前から人格破綻者が多いコミュだと思っていたがついにここまできたか > ルビイスト何名かに対して名誉毀損で法的措置を検討しているらしい
検討するだけなら誰でもできるしな。
効果のない脅しだよw ActionCableのチャットは
同時接続何人くらいまで耐えられる?
AjaxのIntervalで新しいメッセージを取得するのと変わらなくないか? > ActionCableのチャットは
> 同時接続何人くらいまで耐えられる?
サーバーのスペック次第
> AjaxのIntervalで新しいメッセージを取得するのと変わらなくないか?
Ajaxを使うよりも多くの同時接続に耐えることができる 素人質問で申し訳ないですが複数の入力フォームを一つのボタンで
振り分けることはできますか?
例えば
e-mail:
message:
[post]
とあったとして、postボタンを押すとmessageに入力された文章がサイトに投稿され、
e-mailに入力された文章(アドレス)が自分のところのメールボックスに送られてくる
というようなことをやりたいのです
もしお分かりになる方がいらっしゃいましたらやり方をお教え願います Making the move from Scala to Go, and why we're not going back | Movio Movio Blog
http://b.hatena.ne.jp/entry/s/movio.co/blog/migrate-Scala-to-Go/ Rail & CoffeeScript で Web アプリを作ってます。
既存の Web API を拡張しようとしてます。
基本的なことで申し訳ないのですが教えてください。
[状態]
・手を入れようとしている API の元の状態は、リクエストのボディ部をマルチパート形式で複数のパラメータを用いる形式です
・この API に新規のパラメータを追加したいと考えています
・呼び出しは CoffeeScript から行っていて、呼び出し側では新規のパラメータを追加できていることを確認しています
これは Chrome の開発者ツールで、送信した API リクエストを覗いて、確認できています
・Rails 側で API に対応する関数が呼び出されません
ログを見る限りでは Rails 側でルーティング?に回される前に 403 (だったと思う)エラーをクライエントに返しています
メッセージは「(追加した)パラメータが存在しない」と英文でコンソールに出力されていました
[質問]
・API に対応した関数を呼び出す前に API のパラメータを対応する Model クラスに変換?する処理があって
この変換時に失敗しているように思えます。この変換はどこで行っているのでしょうか。
探し方が悪いのでしょうが、検索しても見つけられず。
教えていただけると助かります。 >>134
たぶん、Strong Parametersで引っかかってるのでその用語を検索して学習すると幸せになれる CoffeeScriptって今更新規にやろうとするやつなんているのか? CoffeeScript は完全に役目を終えたね
もはや時代は ES2015 or TypeScript Haxe の時代かな?
>>130
JavaScriptでは、自分でイベントを起こすことができる
1. document.createEvent
2. <<Event>>.initEvent
3. <<DOM>>.dispatchEvent >>135
ビンゴでした。
ありがとう。
>>136
既存の改修なんだ。 「UbuntuがRed Hatを追い抜いた」と創設者 WIRED.jp 世界最強の「テクノ」ジャーナリズム
http://wired.jp/2012/03/20/mark-shuttleworth-ubuntu/ >>143
本気でそう考えてる人間がなぜこのスレをのぞいてるんでしょうかねw >>140
ありがとうございます!
そういったやり方があるとは知らず大変勉強になりありがたいです
ただこの場合、メールソフトを立ち上げて送信するという形になるのでしょうか
できればボタン1つで送信できるという形をとりたいのですが何か良い方法はないでしょうか?
質問ばかりですみません >>146
ありません。
これ以上何も言うことはありません。
なのでこれ以上何もレスするな Chef なら「mailto 宛先」だけで規定のメールアプリで送れるけど
「rails メール送信」などで検索して http://blog.madoro.org/mn/84
独自フレームワークはやめよう
作るのが難しい、メンテナンスが難しい、ということに加えて、もう一つの問題点は、新しく加わった人の教育コストが高くなるということがある。
まず、外の資源(ドキュメント/本/Google検索)が使えないので自前ですべて教育をしなくてはならない。
Rails Hub情報局: 素人がWebサービスを作ってみて分かった9つのこと
el.jibun.atmarkit.co.jp/rails/2011/09/web9-1e8b.html Microserviceなんて最初からやるもんじゃ無かった
http://www.slideshare.net/AkiraMiki/20160722-microservice
マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices
マイクロにしすぎた結果がこれだよ!
http://b.hatena.ne.jp/entry/www.slideshare.net/mosa_siru/ss-64839846 マイクロサービスの終焉 | 開発手法・プロジェクト管理 | POSTD
http://postd.cc/the-end-of-microservices/
コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155
太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題 DHH:Railsがあれこれやらない、というところですかね。Railsにはやらないと決めた機能ですとか、却下した余計な装飾品ですとか、そういうのがたくさんあるんですが、
Railsにある20%のソリューションで問題の80%を解決できるようにしています。
http://kdmsnr.com/translations/interview-with-dhh/ >>148>>149
ありがとうございます。色々な方法があるのですね
手さぐりでやっていきます!本当にありがとうございます RailsのActionMailerにさくらのメールボックスで作成したメールを設定する - blog.beaglesoft.net
ttp://blog.beaglesoft.net/entry/%3Fp%3D447
さくらのメールボックスを利用してrailsでメールを送信する方法 – プログラマーは眠らない
ttp://notsleeeping.com/archives/933 ParseがRubyからGoへ移行,信頼性が大きく向上
http://b.hatena.ne.jp/entry/www.infoq.com/jp/news/2015/07/parse-moved-ruby-go
Parse is shutting down today | Hacker News
https://news.ycombinator.com/item?id=13522626
Parse Status - Parse Shutdown
The Parse service shutdown has been completed.
Posted about 6 hours ago. Jan 30, 2017 - 17:12 PST
https://status.parse.com/incidents/6mpkbscqw6p9 >>155
こちらもありがとうございます!参考にさせていただきます ほとんどの人は一つのRailsアプリからまた別のRailsアプリへ移りながら、Railsがどんな仕組みになっているかを素早く理解していけます。
自家製フレームワークを重要視したり、小さなパッケージを千個もまとめているような環境でそれを試してみてください。
グッドラック。
https://www.transnet.ne.jp/2016/11/23/rails製作者dhhインタビュー記事colnd/ >>150
宗教の布教活動みたいで引くわ。
PHPスレッドにきてそれを書き込んでみればいい。
フレームワークの標準化進むRubyと違い、PHPはむしろフレームワークそのものがカオスだ。
フレームワークを習得したと言うやつは、末端作業を経験しただけの奴ばかりで全く説得力が無い。 railsはページ遷移がうざいわ
この先もう流行らんよ webAPI実装してフロントエンドにあるRiot.jsからAPI叩いてJSON取得して
DOMを非同期に描画するSPA作るのが今の主流
鯖側はすごくシンプルになった React.jsとVue.jsでもいいが
Qiita界隈はRiot.js推しが多い印象だな 鯖側の仕事が減り、RailsのようなフルスタックなWAFでなくても良くなった。
JSON処理能力が高いGolangを選ぶ企業が増えてきたのも時代の流れだな。 基本的なことかもしれないけど教えてください。
◆これまで
API のアドレスを href に仕込んだリンクをクリックすると rails で条件に一致したデータを格納したファイルを作成して
その中身を send_data でクライアントに送信してダウンロードさせていた。
◆やりたいこと
上の API をリンクではなく Ajax を利用した非同期処理で呼び出して、
正常応答(.done)の場合に応答をファイルに保存できるようにしたい。
突っ込みどころは満載かもしれないけど、「やりたいこと」のようなことは出来るでしょうか。
やり方を教えてください。 >>167
javascript blob ダウンロード あたりでググれ doneでダウンロード用のurlを戻して、
JSで location.href = 'download.csv'
に遷移、download.csv のリクエストを受け付けるサーバ側は
Content-Disposition: attachment
のヘッダを付けたレスンポンスを返す、で ダウンロード用のポップアップダイアログが出る
ダイアログを表示させず勝手に保存させるのは当たり前だが無理
FileAPI使えば限られた場所には出来るけど Chromeしか対応してないので実用的でない そんな大袈裟なもんか?
ajaxが何なのか判ってないだけと思われ >>168-170
168 さんのキーワードで 170 さんのページに行き着いて調べました。
結果、自分の実験用環境だと出来たようです。
「だと」というのは本番向け環境だとなぜかブラウザにファイルの中身を表示してる?状態に。
ともあれ方向性がわかり助かりました。
ありがとうございました。
・・・ってこれは JavaScript の質問でしたね。 スタートアップでのプロダクト開発はRailsで必要十分 – Reo Mori – Medium
https://medium.com/@reoring/4a92508bd170 railsで処理中にデータを一時的に保存する必要があって一時ファイルを作ってたんだけど
消し忘れの防止をかねてメモリにデータを保存するように変更しようと思う
ストリームを使えばいいとか聞いたので、ネットで探したんだがそれらしい情報が見当たらなかった
rubyzipとかストリームのページばっかりで
C#とかだとMemoryStreamでいいと思うんだけど、rubyだとどんなキーワードで探せばいいんだろう
教えてくれると助かる You can easily use StringIO as your memory stream.
StringIO かな?
「ruby file in memory」で検索! Railsでは、Coffee Script が使えるけど、
Type Script, Haxe は使える? >>176,178
thx
StringIO で探してみる
※ちょっと探してまだ見つかってないのだけど
>>177
Tempfile クラスのことだよね
すでに使ってる
それでも直したいと考える人もいるので、、、 Tempfileを使ってるなら
消し忘れが起こるはずがないよね ハンドルをクローズしないまま、何らかの原因でそのプロセスが終わった場合でもTmpfileで作ったやつって消えてくれるのかな? >>184
プロセスがキルされた場合は削除されないよ。
後ブロック使うか明示的に close! しない場合GCされるまで削除されない。 1サーバーで運用することが確定しているなら再起動に頼らずに定期的に消すスクリプトを走らせる
メモリを頼るのは悪手
そもそも1サーバーで運用なんて前提はいつ崩れるかわからないので
一時データでも外部DBに保存してアプリケーション・サーバーはステートレスにするのが正義 tmpの中の一日以上前のファイルは問答無用に削除する鯖とか log/*.log をカスタマイズする gem や設定方法ありませんか。
例えば devise の current_user.id や USER_AGENT を入れたいんです。 >>192
fluentd でごにょごにょやればできるんじゃない?よく知らんけど 2017年現在において、Node.jsは、1コアCPUを搭載したサーバマシン1台で一秒間に一万同時アクセス(C10K)問題に対応出来る数少ないWebアプリケーションプラットフォームである。
枯れた技術としてこの問題を解決しているWebアプリケーションプラットフォームとしては、
Java Servletの他に、 研究段階では、nginx+Phalcon(英語版)+PHP+Couchbase(は費用対効果が高い。しかし予算次第では、最善の選択肢として次の)Riakの組み合わせが確認されている
(Node.jsの後継の座を狙うVert.x(英語版)、Go言語[7]もNode.jsを遥かに超える速度を叩き出している)。
https://ja.wikipedia.org/wiki/Node.js
Is Ruby on Rails fading?
https://www.quora.com/Is-Ruby-on-Rails-fading
スタートアップでのプロダクト開発はRailsで必要十分 Medium
https://medium.com/@reoring/4a92508bd170 >>196
https://ja.wikipedia.org/w/index.php?title=Node.js&type=revision&diff=63093197&oldid=63093074
> 2017年現在において、Node.jsは、1コアCPUを搭載したサーバマシン1台で一秒間に一万同時アクセス(C10K)問題に対応出来る数少ないWebアプリケーションプラットフォームである。
↑ 消されてやがるざまぁあぁぁぁぁwwww ソース出せってことだろ
wikipedia使ったことないのかお前 【質問】
書式的に簡単に、インスタンス?変数を持つオブジェクトを作る方法を教えてください。
要するに以下のようなことをしたいのです。
data = Model.where(...).first
data = (どうにかこうにか) if data.nil?
puts data.id
この例では1行目で ActiveRecord の継承クラスでテーブルからレコードを検索していますが、
一致するデータがなかった場合に nil 参照となるのを防ぐために nil であれば同じインスタンス変数(インデクサ?)を
備えたオブジェクトを代わりに作って、以降は同じ処理に流せるようにしたいと思います。
調べた限りでは Struct を使えば出来るような気がします。
もっとスマートな方法もありそうなので教えていただけると助かります。 そういうときは find_or_create_by か find_or_initialize_by を使うのが定石
ブロック渡せば、望むような初期化処理が出来る >>202
ありがとう。
今回の場合、新規にレコードを作ると困るケースがあったので結局はハッシュで初期値を与えられる
Struct のような構造体のようなもの(名前忘れた)を使ってしのぐことになりました。
find_or_... は知らなかったので、今回は利用できなかったけど助かります。ありがとう。 プレミア見れない
ブンデス見れない
CLEL見れない
音楽聞けねえちきしょう
同和のクズ共死ねクソ共がざまあみろ気違い共
ほれ気違い共もっともっとドア閉めろ通れ
それしか能のない能無し共がざまあみろ地獄に落ちろ
悔しいか、ざまあみろくたばれクソ同和
お前らの恐ろしさをもっと見せてみろ。そんなんじゃなんともねえぞ
袋とじ見たぞ
悔しいか、ざまあみろくたばれクソ同和
嫌がらせがエスカレートするのが楽しみでしょうがない
今それだけが楽しみだ
俺の生き甲斐藁
それだけ怒ってるってことだもんな藁 Ruby on Railsが得意な田舎の32歳だけど
今からでも年収500万以上は目指せますか? 得意のレベルによる
コミットもするぐらいならあとはコミュ障じゃなければいける 2つほど教えてください。
@
品物テーブルと値段テーブルがありま、id で関連付けされてます。
品物テーブルには delered_at カラムがあり nil でなければ論理削除されたものとします。
・・・という既存の実装があります。
ActiveRecord で品物の値段を取得しようとすると、論理削除されたレコードは結果に出てきません。
Model クラスで has_meny とかでそういう定義されてるのかなと思ったのですが見当たりませんでした。
論理削除されたレコードを含めて取得するにはどうすればよいでしょうか。
A
RSpec で単体試験用のコードを書いています。
試験パターンとしては WebAPI で、DB にある条件に一致するデータ数による処理を確認したいと思います。
事前に試験用の DB に必要なデータを入れておく必要があります。
このとき、試験用コードの中でデータを入れる、事前に自分で DB にデータを入れておく、などの方法があると思います。
前者を試したところ、試験コードの中では作ったデータを参照できますが、API ではデータが見つかりません。
RSpec とは(規定の動作では)そういうものだとは分かったのですが、こういうケースでは一般的にはどのように試験コードを書くものなのでしょうか。 >>211
テスト用DBが別途存在するということに気づいてないんじゃないかな 初心者なのですが、phpとrubyて両方学んでおいた方がいいですか?
よくわかりませんが、それぞれの言語の得意なことが違ったりとかするのでしょうか ありがとうございます。
>>212
それ、最初にちょろっと躓きました。
>>213
週明けに試してみます。 上級者ですがphpとrubyはやめて
python(またはGolang)を学ぶべきだと思います 最新のTOIBEを見てみましょう
https://www.tiobe.com/tiobe-index/
Ratings順位(総合評価)
5位 Python 3.919%
7位 PHP 3.009%
12位 Ruby 2.254%
Change順位(勢い)
1位 Golang +1.78%
このようにLL言語界ではPythonが圧倒的トップです。 >>216
おまえ基本的な比較演算子も知らなかった超初心者じゃねーか
雑魚すぎてRubyやってるやつにバカにされて逆恨みしてるんだろ 学校の研究で使うのもあってpython学んでたのですが、web開発がしてみたいです。
Djangoは使ってる企業がほとんどなく、インターン先などがないためrubyを覚えようと思うのですが
これは正しいでしょうか。pythonで何とかできるようにするべきでしょうか。 「web開発がしてみたい」
この先にある野望は何?
実装したいアイデアがあるの?
ただ単に就職しやすい技術を学ぶのが目的? 「2017年においてRailsを習得する価値」
ttps://www.transnet.ne.jp/2017/03/20/「2017年においてrailsを習得する価値colnd/ Webアプリケーション自体が終わってる
スマホアプリ化しないとアクセス集まらないし(スマホユーザは検索すらしたくない人が多い)
スマホアプリユーザくらいしか広告クリックしないから酷いもんよ
PC専用だとガチでCPM20〜30円くらいだぞ(インプレッションからくるもの)
スマホ専用広告だとCPM150円あるのにw ワコールの情報流出が問題になってるけど
どんなアホな設定したらあんななるん? TwitterはScalaを捨ててNode.jsに移ったそうです。 - 望月いちろうのREADME.md
http://www.utali.io/entry/2017/02/24/170000 たぶん情報流出は、SQL文をそのまま送信しているのだろ
そのSQL文を改変するだけで、情報を盗める http://www.techempower.com/benchmarks/#section=data-r13&hw=ph&test=json
>colossus 505,321 Sca
>vertx 465,523 Java
>nodejs 304,372 JS
>gin 259,637 Go
Scala使ってるならColossusにすりゃ良かったのに
http://tumblr.github.io/colossus/ 「シュバババババ!これJava使って儲けてるよね!?はい!訴訟!」
するOracleが嫌いだからJava界隈とは付き合いたくない
自由が一番 Javaは嫌いだがバイトコードにコンパイルするときに大まかなエラーが分かるのは生産性に直結する大きな利点なので
そこらへんはLL言語にない魅力ではあるが、webでコンパイラ言語がいいなら今はGolangがあるので
やっぱりJavaはないな [49選]国内注目のWebサービス・アプリを大調査! プログラミング言語、フレームワーク、アーキテクチャの一覧【2017年 春 ver.】 - エンジニアHub|若手Webエンジニアのキャリアを...
https://employment.en-japan.com/engineerhub/entry/2017/04/07/110000 >>244
知らないサービスが大半だけどこういうのいいね
Golangが思ってたよりは広く使われてた RoR4の勉強を始めて数週間
そろそろRoR5の参考書が増えてくるだろうから乗り換えるか迷ってるんだけど
RoR5って何かRoR4より不具合出るイメージあるんですが、どうなんでしょう
(最初にlayoutのjavascriptの設定を変える必要があったり) >>248
大手が布教活動に全力あげてるからなぁ(勉強会主催)
Goエンジニアを増やしたいのだろう
実際使ってみれば分かるがC,C++と同じコンパイラ言語であることから
速度はLL言語と比較にならないくらい早いし並列処理を簡単にかけるから
CPUリソースをフル活用するのにめちゃくちゃ適してる
テキスト、DB操作以外の複雑な処理(画像加工等)はGolang使ったほうが良いのは誰の目から見ても明らか
それ以外の処理速度がボトルネックにならない部分は、既存資産を活用(RubyやPHP使う)する感じがモダンな開発スタイル 新しいRails5本
結構でかい本屋に行ったのにおいてなかった
売り切れかもしれんが・・・
ネット予約したわ・・・ 新しいRails5本
現在Amazonで本日出荷予定になっている DHH:Railsがあれこれやらない、というところですかね。Railsにはやらないと決めた機能ですとか、却下した余計な装飾品ですとか、そういうのがたくさんあるんですが、
Railsにある20%のソリューションで問題の80%を解決できるようにしています。
http://kdmsnr.com/translations/interview-with-dhh/ NodeJS vs Ruby on Rails comparison 2017. Which is the best for web development?
https://medium.com/@TechMagic/9aae7a3f08bf オワコンになりつつあるルビーの存在価値に関する確証バイアスを深めるスレ >>267
本当にオワコンならアンチすらこんなスレ覗かない
アンチがいるということは現役である証拠 >>268
RedmineもGitLabもRailsだしね。 https://goo.gl/YbgPdk
これ嘘でしょ?本当だったら、へこむわ。。 改訂2版 パーフェクトRuby | Rubyサポーターズ |本 | 通販 | Amazon
https://www.amazon.co.jp/dp/4774189774/
なんか余計なものついちゃったので削除したやつ Writing software is hard – Signal v. Noise
https://m.signalvnoise.com/388d5e982ad9 好き嫌いは誰にでもあるからねー
俺だってJavaは大嫌いだしw Javaは別に嫌いではないけどオラクルは嫌い
あと受託系企業も嫌い
なのでJavaを避けている RailsはBtoCの自社サービス系の会社が多い
自社サービス系は少数精鋭が多くエンジニアに対する待遇が良い
JavaはBtoBの受託系が90%以上
スキルにばらつきがある烏合の衆でITゼネコン構造のブラック企業である確率が高い > RailsはBtoCの自社サービス系の会社が多い
例えばどんなの?
俺はgitlabぐらいしかしらない。 上場企業ならクックパッドがRails使いとして有名 Gunosyもそうだし食べログもだし
元Google社員が起こしたFreeeもRailsだね
WantedlyやCrowdworksもRailsのはず Rails使いとMacユーザって層が被ってるよね
対するJava使いはWindowsが多い
エンジニアかIT土方かの違いがOS選択の傾向にも現れてる > Rails使いとMacユーザって層が被ってるよね
どうやって調べたの? LINEはJavaが多いけどMacがメインとして使われてるよ。
ほんとしらないんだねw 上場企業主催の勉強会
MatzもMSのカンファレンスでこの件について指摘してたが殆どMacユーザだよ 外資系はJavaが多い気がする。Googleもそうだし >>296
おいおいw
そんな勉強会に来る人間、
雑魚会社ばかりに決まってるじゃんw >>296
なるほど。MSのカンファレンスだから
さぞJavaユーザーが多そうだ。 http://www.itmedia.co.jp/news/articles/1606/08/news138.html
>「例えばスーパーコンピュータは97%がLinuxで動いているし、開発者カンファレンスとかに行けば9割がMac。あれだけデベロッパーと叫んでいたのに、デベロッパー向けのPCのシェアは1割に満たない」(まつもと氏)。 >>296
それは、Matzの思い込みですよね?
なんかデータでもあるんですか? 開発者カンファレンスとかに行けば9割がMac
=開発者カンファレンス以外では9割がWindows
=つまり目立ちたがり屋がMacを使ってるってだけで
会社で使ってるのはWindowsってことさ、あはははは
いいから統計データ持ってこいよ まつもとが言うことはぜったいに正しい
信者たるもの教祖の言うことは絶対である >>300
MSのいうデベロッパーって
Win用ソフトのことでしょ? 昔、Googleから出される試験を突破しないと参加が認められない
Google Devfest 2010に行った時は、たしかにMacユーザ(&iPhoneユーザ)が多かったな
応募者の上位2割しか参加できなかったからゴミエンジニアはいなかったと思う https://japan.googleblog.com/2010/03/devfest-2010-japan.html
>開発者イベント「DevFest 2010 Japan」が東京と京都会場で開催されました。
>2,000名を超える事前登録に対し、「DevQuiz」にパスした 400名が参加証を手に来場しました。
ちなみにこれね
他の勉強会だと先着順で誰でも参加できるから>>298の指摘通り
雑魚エンジニアばかり集まってる可能性を否定できない というか、仕事じゃなくて、私物のパソコンを持ってきましたってだけで
普段からMac使ってることにはならんのだが クックぱっとほど害悪な技術情報を垂れ流す企業はないよ >>309
具体的にどういう情報が害悪だったの?
その情報へのポインタおせーて RubyVM を作った笹田耕一が、クックパッドへ入社した
クックパッドは今や、Rubyでは日本一の会社! 中国 Baidu
韓国 NAVER
日本 国産検索サイトなし(YahooはGoogleの借りてるだけ、いわゆるOEM)
検索を制するものはITを制する
早く日本もだそう >>309
レシピはクソだけど技術者は
そうじゃないと思うけど? RailsConf 2017: Opening Keynote by David Heinemeier Hansson - YouTube
http://www.youtube.com/watch?v=Cx6aGMC6MjU railsチュートリアルの内容ぐらいならできます。って人はどれぐらいの企業に応募したらいいんですか?ベンチャーは無理そうと聞いたのですが中堅あたりを狙えますか? JavaとかC#やっていれば普通に全国で仕事にありつけるよ。中堅企業以上で常駐だけど
Rubyだと東京の零細ベンチャーぐらいでしょ。 プログラマになりたい方へ!開発に必要なスキルを身につけることができます! - 株式会社万葉のWeb エンジニア中途・新卒の求人 - Wantedly
https://www.wantedly.com/projects/77873 JavaとC#じゃゼネコンIT構造のブラック受託企業の名前しか浮かばない C#はUnityあるか
Unity使いの80%がC#選んでる
スマホアプリ作れるなら転職には困らん、というか独立できる 究極目標はホワイト企業に就職ではなくて
一人で設計・開発・運営するwebサービス立ち上げて
Google AdsenseやNendから毎月100万以上貰って
誰からも命令されること無く、誰にも給料払うこと無く
悠々自適に生活することだぜ それは年収1000万以上の外資系ホワイトIT企業に勤務してても同じだぜ
給与所得控除があるかないかの違いしかない ある程度アクセスが安定してるwebサイトの平均的なCPMは150円ほどらしいので
月間1000万PVあれば毎月100万収入を得られるぞ 俺って頭いいしコミュ力も高いし天才だわ
あ、でも口だけのやつと一緒にしないでね
ちゃんと英語できるしムエタイも最強だしチェスもロシアのアマ強豪と張り合うくらいだからまだ2年しかやってないけどな
俺くらいのスキルあるやつと一緒に組んで大金儲けたいんだけどだれか自分に底知れぬ自信持ってるやついる・
口だけのやつは勘弁してね IPA未踏→東大→IBM勤務の後輩紹介してあげようか? >>333
自分に自信があるやつな
しかも釣りだろすぐわかるなお前がそいつ紹介できるわけねーだろ
俺クラスになると釣りかどうかは瞬時に見分けられるからな
go home get a job faggot 656 名前:nobodyさん[] 投稿日:2017/05/20(土) 16:56:13.95 ID:YnuEC7gj
俺ハッカーになりたいけど1日でなれる?
ちなみに英語とチェスとムエタイが最強な天才だお 自分では何も出来ないnewbieじゃんw
他人の褌で儲けようとする天才なのか?Tehuっぽいやつだな >>8
プログラムのキャリアを台無しにしたくなければRailsはやらないことだろうな
GitHubリポジトリトレンドRanking
1 Jupyter Notebook 16.2
2 Python 4.0
3 C# 3.5
4 C 2.4
5 C++ 1.3
10 Scala 0.3 Ruby(Rails)はモックアップ、プロトタイプを作るためのツールで
本番環境で動作させるものは負荷に強いJava(Scala)やGolangで作るのがいい Ruby on Railsの事例まとめ(海外有名サイト編) - [Skillhub (スキルハブ)]
http://skillhub.jp/blogs/176
Ruby on Railsの事例まとめ(日本有名サイト編) - [Skillhub (スキルハブ)]
http://skillhub.jp/blogs/177?ref=176 >>340
そこまで負荷がかかるほどアクセスあるんですか?を考える方が先 最近出たRubyパーフェクトの改訂第2版買った方がいい? クラウド費用抑える目的で処理が早い言語を使う
小規模でも恩恵あるだろ フロントエンドがiOSでもAndroidでもWebでも型つき言語が主流になったので
サーバーサイドもいずれそうなる
遅い言語はもうお呼びでない 実行速度が早い言語が開発コストが高いかといえばそうでもない
コンパイル時にエラー検出できるからむしろ効率良い
コンパイル速度も改善されてるし
LL言語はPCが非力だった時代の名残みたいなもんだな なんでそういう話する人間がRailsスレ覗いてるんですかねぇ
Ruby叩いて気持ちよくなりたいんですかねぇ Rubyは第二のPHPerを産み育ててしまう雰囲気があるからな
IT後進国の汚名を着させられてる日本を憂いているのだよ
新人が誤った方向に向かわないよう適切に誘導してあげなければいけない 思想がパヨクみたい
自分の思想のためなら他所の場所を荒らすこともいとわないところとか >>340
いまどきJavaなんてプログラマに苦行を強いるだけだし、Scalaは言語としては悪くないけど周辺技術が
クソすぎてRuby界隈の足元にも及ばないし、Goに至ってはただのBetter C++で速度を出したい部分限定で
使うならいいけどRaisのような分野で使おうと思ってるPMがいたら今すぐ洗脳解除プログラムを適用すべき
レベルで病んでるぞ > Raisのような分野で使おうと思ってる
JavaやScalaやGoをモックアップやプロトタイプのような分野で使うわけ無いだろうw >>358
Goを画面数の多いWebアプリケーションで使おうとか言ってる奴らのことでしょ
最近流行り?のマイクロサービスとかならサービスによっては使い所があるかもだけど webアプリなら、Rails, Kotlin。
Kotlin = Scala + Groovy
Go は、Docker などのミドルウェア 今回の民法改正、ソフトウェア受託開発の場合、(検収後ではなく)バグ発見後1年瑕疵担保責任があるということで、地獄かよ、と思ったが、
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744 バグがないソフトなんて無いから・・・
これは実際の現場を知らないアホが作ったんだろう バグ発見後ってふざけてると思うけど
糞ソフトや糞業者が無くなるなら良いことかもな うちは受託じゃないからどうでもいいわ
自社開発のBtoCは自社の利益のためにバグがあったらすぐ潰すのが当たり前の世界
受託のビジネスモデルが破綻してるのは前々からだし、いい引導になるんじゃないか? 受託が全部消えて自社開発するしかなくなり
その結果、右から左に案件を受け流すだけのピンはね屋が消え
エンジニアの待遇が向上する可能性もあるので応援したい Railsでシステム作って納品する
↓
Railsはマイナー、メジャーのアップデートが半年以内に必ずある
↓
客がアップデートする。アップデートによるエラーやバグ、動作の不具合に気づく
↓
気づいてから1年以内に通知すれば、5年間無料保証ゲット
↓
つまりRailsがアップデートするたびに、無償の修正作業を発生するということかな 利用するWAFのGithubページにissueが残ってる限り、無償サポートを強制されるから
自社でフレームワークを作ってクローズドにするしかないな
潜在的なバグを顧客に知られないようにする工夫が必要 契約自由の原則
これは、民法で定められた内容と異なる内容で契約した場合、
常識と照らし合わせて著しく逸脱してなければ、契約内容が優先されるというものである。
例えば、改正案では不具合の無償修正に関して「不具合が有る事実を知ったときから1年間、5年以内が上限」としているが、
契約で「引渡しから3年以内」と結んでいた場合、契約を結んだ「3年以内」のほうが優先されるのである。
そのためどのような個別契約を結ぶか、という点が大変重要になるのである。
http://www.techvan.co.jp/media/quality/civil-code
民法
第91条
法律行為の当事者が法令中の公の秩序に関しない規定と異なる意思を表示したときは、その意思に従う。
http://www.minnpou-sousoku.com/category/article/5/91.html >>375
客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。 >>376
なんでそう思ってる人がRailsスレなんか覗いてるの?
他言語叩いて気持ちよくなりたいような性格悪い人間はお呼びじゃないよ >>376
わざわざこのスレまで来て忠告ありがとうな そんでみんなJavaで消耗してるんじゃなかったっけ?
俺はやだけど。 XML地獄だったJava(当時主流だったStruts)と対比してRailsが流行った時代はもう過去のもの
JavaにもRailsライクなWAFあるしバイトコードコンパイル時にエラー検出できるからRailsより生産性高いよ そして動作速度も早い
AndroidにKotlinが採用されたので
受託(ブラック企業)からスマホアプリ開発自社サービス企業(ホワイト企業)に転職する際にも有利だし >>381
残念ながらそんなエラー検出ごときで上がる生産性は微々たるもので、型定義の手間で足が出る
Play!で実際に開発をした経験の結果 型定義の手間ってなんだ?
だったらGolang使えば? GAE/Rustはない
無料で始められるPaaSのGAE/Go一択だな >>384
Java否定されたら次はGolangか
とにかく何がなんでもRubyを否定したいだけなんだな >>384
GolangはただのBetter C++
C++みたいな分野で楽に書きたいなら非常に有用な言語だが、Railsは畑違い RUBYMOTIONでAndroid開発している人どうですか?
今、資格取得に忙しいんで時間が取れないのだけど、終わったらやってみたいと思っている。 rails5.0 になってやっとleft outer joinメソッドが実装されたのは驚き
今までなかったのかよ、と
これがなくてよくDB使ってたな
まさかRailsユーザってDBはあまり詳しくない奴ばかりなのか? よくJavaで構築するようなイントラ系ビジネスアプリケーションを受託開発するビジネスでRailsを使っている会社は少ない
主にBtoCの自社サービス系(web)の構築に使われる
大規模なアクセスを捌かなきゃいけないのでスケーラビリティの低いRDBMSは選択されずNoSQLなどが使われる
NoSQLはJOINが必要なデータは最初から結合して保存しておかないとパフォーマンスが落ちる BtoC業界では当たり前の知識だが受託系の人は知らんのだろうな
https://yakst.com/ja/posts/22
ここら辺をよんで勉強しとけ ついでに言っておくとWebアプリケーションのパフォーマンスボトルネックは
データベースのディスクI/Oが大部分なので
いわゆるコントローラーの処理速度をGolangやJavaで高速化しても
全体はそれほど早くならない >>390
> rails5.0 になってやっとleft outer joinメソッドが実装されたのは驚き
だってSQL使わないじゃん。結合なんて勝手にやってくれて
内部でjoinしてくれるでしょ?
なんでわざわざ自前でjoin書かないといかんのだ?って感じなんだが >>394
それな
わざわざ5レスに分割してるのも
思いつきで書き散らしてまったく計画性が感じられない >>394
従テーブルの外部キーを持たない主テーブルのデータは空白で表示したいことって多いだろ
それをなんでわざわざ毎回実装しないといけないのよ? >>396
こんな感じ?
class Hoge; end
class Fuga; belongs_to :hoge; end
Fuga.all.each {|fuga| p fuga.hoge&.name }
eager_loadはお好みで >>397
セルフネーバオペレータ使うのはちょっと違うと思う >>399
DBの責務とRubyの責務がぐちゃぐちゃになってるから
その処理はDBがすべきもの >>400
え?LEFT OUTER JOIN使ったとしても似たようなコードになるよね? >>401
データのある無しを判断して空白で返す処理をしてるのがMySQLなのかRubyなのかの違いを言っています
コードの似たりよったりではありません。 >>402
でも似たようなコードで同じことができるなら別にいいじゃん
SQL原理主義なんてバッチみたいな速度にシビアな場面でだけ使えばいいんだし、
UIみたいなそうでもないところはコードの保守性の方が大事だよね >>402
え?データのあるなしを判断するはあくまでDBでしょ?
ActiveRecordはそこで投げるSQLを隠蔽しているだけで、ActiveRecordだってデータのあるなしはDBに問い合わせてるよ
そこでLEFT OUTER JOINを使うか、eager loadを使うかで投げるSQLの内容は違うだろうけど、Rubyがデータのあるなしを
判断できるわけないでしょ >>403
完全に素人の発想だな
この場合は大したことしてないけど、
もっと複雑なSQLで大量のデータを対象にした場合どっちがスケールするかな?
そういうことを考えないと いままではDBのしごとで
それぞれの立場で仕事してたのに
Ruby側でやりたいとかわがまま言い出して
Ruby側で実装されたって流れ。 >>406
RubyはDBの仕事を取ってたりしてないよ
ActiveRecordがうまく隠蔽してるだけ
というかRubyがDBの仕事をできるわけないじゃん SQL書きたくない(書けない)ってひとがRubyというかRailsというかActiveRecordに流れただけ >>408
SQLだけでアプリが作れない以上、ActiveRecordになるのは当然だと思うが? ヒカル TV出演「年間5億は稼ぐ勢いですね」
https://www.youtube.com/watch?v=G7qL6ftpets
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
https://www.youtube.com/watch?v=asF2wQ2xhjY&t=61s
ユーチューバーの儲けのカラクリを徹底検証!
https://www.youtube.com/watch?v=FUSb4erJSXE&t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
https://www.youtube.com/watch?v=Y7DAQ0RKilM&t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます
https://www.youtube.com/watch?v=E4q-vaQh2EQ&t=118s
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法
https://www.youtube.com/watch?v=Fr0WXXZRMSQ
最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいいぞ。副業にぴったしだ
やろうと思えばスマホがあればできるぞ
最低2年はやらないとここまではいかないだろうけど才能とアイデアと
企画力と継続力があればが大儲けできる可能性がなくもない
まだまだ他の職種に比べれば競争率は低いからオススメ
顔出したくないならラファエルみたいに仮面つければいい
ハロウィン用でいろいろな仮装マスク売ってるからオヌヌメ すみません、PHPから流れてきてrails初心者なんですが
ActiveRecordでDBからレコード取得する時にSQLのSUBSTRみたいに
レコードの文字列の一部だけ取得するやり方ってどう書けばいいんでしょうか?
頭の3文字だけ欲しいみたいな感じです NanikanoModel.find_by(1).nanikano_mojiretsu[0,3]
NanikanoModelのnanikano_mojiretsuフィールドの型がstring型(DB定義var_charとか)だったらこれでいける。
[0..2]
でもOK 私が億万長者になった日 – Medium Japan – Medium
2006年に突然状況は大きく変わった。
ジェフ・ベゾスがBasecampに関心を持ってくれたので、ジェイソンと私はそれぞれ会社の非支配持分を数百万ドルで売った(Basecampは設立当初から財務状況が悪くなかったので、無理に資金調達する必要はなかったのだが)。
私は億万長者になったのだ!
http://b.hatena.ne.jp/entry/s/medium.com/japan/4614d3f4a255
https://medium.com/japan/4614d3f4a255 数億円で売ったのか、安いな
上場したら糞みたいな会社でも時価総額50〜100億くらいになるのに
もったいない >>411
str = "hello"
str.first(1) # => "h"
str.first(2) # => "he"
str.first(3) # => "hel" なあ。rails の vendor ディレクトリの下のソースコードって触っちゃいけないんだよな?
gem とかからインストールされるファイル群だと思うんだけど、そうでもないんだろうか。 >>417
触ってもいいよ
バージョンアップとかで触ったのは全部消えるけど
デバッグとかで触ることはよくあるし >>418
ああ。そう言うものなんだ。ありがとう。
あのファイルを編集するのが一番簡単なんだよな。。どうしよう。 編集してメンテを続けるのはつまりフォークになるんだが
短期的なデバッグ以外なら茨の道 要するにメルカリで情報流出させるようなDeployしてるのか君らは >>420
forkしたプロジェクトで編集してそこからインスコだな 瑕疵担保責任(かしたんぽせきにん)
瑕疵担保責任のポイント
民法改正で事実上期限が「無制限」になった
バグや設計のミスなどは、瑕疵担保責任
納品物に不具合があれば損害賠償を請求される可能性もある
不具合を指摘されたらすぐに行動をとるべし
軽微なミスでも先延ばししない
http://www.atmarkit.co.jp/ait/articles/1706/26/news014.html
http://itpro.nikkeibp.co.jp/atcl/news/17/052601508/?rt=nocnt
改正法では欠陥に気付いてから1年以内にITベンダーに通知すれば、
通知後5年以内は修正や報酬の減額などを求められるとしている
全ベンダーが泣いた民法改正案を解説しよう その1
http://www.atmarkit.co.jp/ait/articles/1609/14/news009.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_2.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_3.html
ポイント1:修補や損害賠償、契約解除の期限がなくなる
従来あった「瑕疵担保期間は引き渡しから1年」という考えはなくなる。
条文にある通り、注文者は成果物が契約の目的に適合しないことを発見したら、
その「発見したときから1年以内」ならさまざまな請求ができる。発見が10年後なら、
11年後まで請求可能なのだ。
もっとも、現実のユーザーとベンダーの関係でも、たとえ契約書に「瑕疵担保責任期間は納品から1年と」明記されていても、
「2年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。 サーバー変えたら動かなくなりました。
OSアップデートしたら動かなくなりました。
OS変えたら動かなくなりました。
WEBサーバー変えたら動かなくなりました。
WEBサーバーにパッチプログラムをあてたら動かなくなりました。
DB変えたら動かなくなりました。
DBをアップデートしたら動かなくなりました。
PHPのアップデートプログラムを更新したら動かなくなりました。
Railsアップデートプログラムを更新したら動かなくなりました。
Rubyアップデートプログラムを更新したら動かなくなりました。
高負荷になったら動かなくなりました。 無償で修理してください。損害も請求します。
しばらく放置していて、最近動かしたら動かないです。原因はわかりません。これは御社の不具合なので無償で修理してください。
無償で修理してください。損害も請求します。
納品先の会社 10社から同時に
重大な脆弱性が現バージョンから発見されました。こちらでアップデートしたところ、起動ができなくなりました。
至急弊社に来て修正作業をお願いします。なおお金は払わない。また営業に損失が出たので損害請求もします。 アップデートしない契約を結べばいいのだろうが
セキュリティーアップデートがある限りそれは不可能 マイクロサービスはもう十分 | プロダクト・サービス | POSTD
http://postd.cc/enough-with-the-microservices/
マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices
コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155
太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題 分割粒度が小さすぎると、組み合わせ爆発が起こって、
階乗・巡回セールスマン問題のように、プログラミング不可能! すみません、コントローラで
def index
UNIXSocket.open('/tmp/myapp.sock') do |sock|
sock.write(params.to_query)
rt = sock.readline
render text: rt
end
end
ということがしたいのですが、どうも
rt = sock.readline
のところで処理が止まってしまうように見えています。
renderの部分まで処理を進めるにはどのような書き方をすればよいのでしょうか。
教えて頂けますと嬉しいです。 すみませんよくよく考えるとrailsの質問ではないですね・・
移動します。失礼しました。 ActiveRecord の話だと思うけど。ここでいいですか。
前段
とあるモデルクラスで管理しているテーブルのカラムに NULL 許容&ユニーク制約をつけたいと思います。
普通に validates email, uniqueness: true などとやるとユニークにはなるのですが。
レコードを追加するときにこのカラムに NULL のレコードがほかにあるとバリデーションでエラーになります。
質問
ActiveRecord のバリデーションで、ユニーク制約をつけつつ、NULL だけは重複があっても許容するような設定は出来ますか。
現状
uniqueness でやるのは諦めてカスタムバリデータでチェックするようにしてみました。
一応動いていますがもっと簡単にできそうな気がします。 >>431
>ユニーク制約をつけつつ、NULL だけは重複があっても許容する
これDB側は対応してるの?
直接他のツール等でSQL発行するとどうなる? 最新人気ランキング
1位 Java
2位 C
3位 C++
4位 Python
5位 C#
6位 PHP
7位 Visual Basic .NET
8位 JavaScript
9位 Delphi/Object Pascal
10位 Go
11位 Perl
12位 Swift
13位 Ruby
14位 Assembly language
15位 R
16位 Visual Basic
17位 MATLAB
18位 Objective-C
19位 Scratch
20位 PL/SQL
https://www.tiobe.com/tiobe-index/ >>432
INSERT とかで挿入する方法ですよね?
普通に複数の NULL カラムのレコードを追加できます。
>>433
既存のプログラムが、ActiveRecord でのバリデーションを実装してるんです。 確認してきました。
DB 側(MySQL)に Null:YES、Key:UNI となっていて、
そのカラムに複数の NULL レコードをインサートできていました。はい。
やぱり ActiveRecord だと対応できないんでしょうか。 >>440,441
ありがとう。
確かめました。
バリデーションにも条件て指定できたんすね。。
今回は前に組んだカスタムバリデーションでとりあえず行こうと思います。 私が億万長者になった日
2006年に突然状況は大きく変わった。
ジェフ・ベゾスがBasecampに関心を持ってくれたので、ジェイソンと私はそれぞれ会社の非支配持分を数百万ドルで売った(Basecampは設立当初から財務状況が悪くなかったので、無理に資金調達する必要はなかったのだが)。
私は億万長者になったのだ!
http://b.hatena.ne.jp/entry/s/medium.com/japan/4614d3f4a255
https://medium.com/japan/4614d3f4a255 考え直そうーーRuby on Rails生みの親でBasecampの創業者がスタートアップに贈る言葉【寄稿】 - THE BRIDGE(ザ・ブリッジ)
http://thebridge.jp/2016/04/reconsider CakePHPやってたんだけど
Cake3とLaravelどっちが良いかな? まちがえた
RailsとLaravelどっちが良いかな? どっちも将来性がないからPythonがGoにしとけ こんなオワコンフレームワークをまだ使ってる奴いるんだw
さすがにRailsは10年前のものだよ >>449
じゃあお前的今時プラットフォームはなんなんだよ >>454
老害だなんてだれも言ってないぞ
被害妄想激しすぎてきもーいw >>457
で、どこで言ってるんですか?
被害妄想にとりつかれた病人さん? Ruby on Railsをウェブの無料サイトで学び始めた初心者です MacBook Proで勉強してるんですけど1文字打つ毎にタッチパッドで文字の横をクリックしないと文字を打ち込めないんですけど、このやり方であってますか?
あとなぜかバックスペースが反応しなくて1回プログラムを打ち間違えたら修正できないんですけど、こういう言語なんですかね? Ruby on Rails 5入門 (全28回) - プログラミングならドットインストール
http://dotinstall.com/lessons/basic_rails_v3 質問。
Rails & MySQL の環境で、
とあるテーブルのレコードをループ処理で 500 回くらい保存しないで作ると応答がなくなる(たぶんプロセスが落ちてる)のだけど、
こういうのの原因てどういうのがあるのでしょうか。保存したらどうなるのかは試してません。
メモリを見てても実行中に特に増えるようなことはないし、別の開発用の環境だと100万回くらいやっても平然と動いてるし。
原因が分かりません。 分散システムについて語らせてくれ
https://www.slideshare.net/kumagi/ss-78765920
マイクロサービスの終焉 | 開発手法・プロジェクト管理 | POSTD
http://postd.cc/the-end-of-microservices/
マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices
コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155
太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題 >>466
ありがとう。
タイムアウトなんてあるんですね。
一度生成したレコードはもう使わないので解放?をしたいのですが、明示的に出来るモノなのでしょうか。
http://qiita.com/dainghiavotinh/items/8158213207b257670ff3
このページの3の方法を試したのですが、落ちる?タイミングが早まっただけでした。 漏れも、RoR はよく知らないけど、
DB の一般論で言えば、1回限りの都度接続と、持続的な接続の、2タイプある
都度接続では毎回、DBに接続して、レコードを取得して、DBからデタッチする
一方、持続的な接続では、接続し放し。
最初に接続すると、接続中に処理を何回もできるけど、
レコード書き込みなら、長時間、表がロックされてしまう
DBの説明書を参照 最新トップYoutuberの年収は10億円、1億円の時代はもう古い
http://www.himatubushisp.com/entry/2017/05/10/224945
Youtuberヒカルが月収を明らかに!!おはよう朝日です出演
https://www.youtube.com/watch?v=RLZGrqQnnZc
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
https://www.youtube.com/watch?v=asF2wQ2xhjY&t=61s
ユーチューバーの儲けのカラクリを徹底検証!
https://www.youtube.com/watch?v=FUSb4erJSXE&t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
https://www.youtube.com/watch?v=Y7DAQ0RKilM&t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます
https://www.youtube.com/watch?v=E4q-vaQh2EQ&t=118s
最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいい
手っ取り早く視聴数稼ぐには有名ユーチューバーへの物申す系動画がオススメ
しばたーやよりひとやkunやぽんちやモンスタージョンなどを真似すればいい >>469
ありがとう。返信が遅くなってごめんなさい。
その理屈は自分でもわかるんです。
ただそのような制御を rails でどうやるのかが分からず。
ひょっとして C# でやるところの using のようなことをやれば?とか思いついたところなのですが、環境がないので試せず。
申し訳ない。 >> 469
> レコード書き込みなら、長時間、表がロックされてしまう
嘘吐きは泥棒の始まり! エラーログが無いと分からないから、
まず、エラーログを取得して、そのエラーログで検索する
MySQL は無料だから、副問い合わせとか、複雑なSQL には対応していない。
複雑なSQL を書いたら、組み合わせ爆発(乗算)を起こす
A表の行数 × B表の行数
DB の基本は、実行計画を見て、何行にアクセスしたか、調べる。
インデックスを使っていなければ、総(線形)探索になる
DB は、ミックの本とか、読んでいないと無理 >>473
> MySQL は無料だから、副問い合わせとか、複雑なSQL には対応していない。
4系時代にクビになった後IT業界に戻れなかった元能無しSEか
ただの嘘吐き >>473
自分へレス?
どうやらエラーログは収集できてないようです。
というかいきなり落ちてるっぽいのでなんとも。
また ActiveRecord による単純なレコードの新規作成(保存さえしていない)なので、複雑な SQL はないと思うんですが。 1行ずつ、デバッグして、原因究明するとか。
単純に、1行だけ挿入するとか
出力の文字コードが、異なるとか?
パスワードなどのアクセス権限・実行権限・セキュリティとか?
エラーログが無いと、原因が無数に考えられるから、話にならない
DBをサービスとして起動していないから、
親プロセスの終了で、自動的に子プロセスも終了させられているとか
SSH などで、よく起こる。
端末(親プロセス)を終了したら、
端末から起動した、子プロセスもすべて終了してしまうとか
LPIC とか、OSの資格を持っていないと、システム構築運用はできない。
プログラマーは、OSの仕組みを知らないから
こういう知識を、コンピューターリテラシーと言う > こういう知識を、コンピューターリテラシーと言う
だからなに? 質問させてください!
Railsガイドのチュートリアルでアーティクルのコメントに対してエラーチェックするためにはどのようにすればいいのでしょうか。
以下のコードに「<% if @comments.errors.any? %>」のようなものを組み込みたいと考えています。
ご存じの方がいらっしゃったらよろしくお願いいたします。
<%= form_for([@article, @article.comments.build]) do |f| %>
<p>
<%= f.label :commenter %><br>
<%= f.text_field :commenter %>
</p>
<p>
<%= f.label :body %><br>
<%= f.text_area :body %>
</p>
<p>
<%= f.submit %>
</p>
<% end %> Rails ってリクエストを受けてから返すまでの時間制限というかタイムアウトみたいな設定値があったりします? >>475
各アプリのログか、OS のログを見れば? 結局 >>482 さんに教えていただいたのが原因でした。
リクエストを受けてから Unicorn の(デフォルト)タイムアウトまでに処理できなくて切られてた、という単純な問題だったようです。
お騒がせしました。・・・連休挟んで >>481 で気がついて質問するまでに2週間掛かったよ。。おバカでした。
ActiveRecord のインスタンスを作るところで落ちてたのは、
ループ中の処理時間のほぼ全部をそれに使ってたことによる単純な確率の問題だったようです。 あ。書き漏らしてた。
お相手をしてくださった皆さん、ありがとうございました。
上のレスの通りなんとか解決しました。 railsのコントローラーからFirebaseのauth機能使う方法ご存知の方いらっしゃいませんか?
Databaseへの保存などは出来るのですがユーザー作成などをrailsから行う方法がわからず困っています。 なんでrailsからやろうとしているの?
ふつうはクライアントサイドでやるものでしょ? 366 :nobodyさん 2017/05/29(月) 16:07:39.16 ID:6v4UcGhE
今回の民法改正、ソフトウェア受託開発の場合、(検収後ではなく)バグ発見後1年瑕疵担保責任があるということで、地獄かよ、と思ったが、
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744
367 :nobodyさん 2017/05/29(月) 16:28:06.55 ID:6v4UcGhE
ニュース - 改正民法が成立、「瑕疵担保責任」などシステム開発契約に影響大:ITpro
http://b.hatena.ne.jp/entry/itpro.nikkeibp.co.jp/atcl/news/17/052601508/
372 :nobodyさん2017/05/29(月) 19:10:37.12 ID:???
Railsでシステム作って納品する
↓
Railsはマイナー、メジャーのアップデートが半年以内に必ずある
↓
客がアップデートする。アップデートによるエラーやバグ、動作の不具合に気づく
↓
気づいてから1年以内に通知すれば、5年間無料保証ゲット
↓
つまりRailsがアップデートするたびに、無償の修正作業を発生するということかな
376 :nobodyさん2017/05/30(火) 09:20:20.09 ID:L5po86sS
>>378>>379>>375
客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。 >>489
>これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
>保守に強い言語のみ生き残れる。
発想がバカすぎる…
ITベンダーがつぶれて、自社で直接開発者を雇う形にシフトしていくだけだろ rubyやってる奴らってかなり気持悪いんだけど
キモいキモい もはや時代遅れで構文がキモい言語にいつまでもしがみついているやつらだからな
国産言語(ハァ?)に誇りを持って選民意識がすっごーいっ >これは変わり目だ。お前らも早く逃げたほうがいいぞ。2ちゃんは確実に廃れる。
>実名サイトのみ生き残れる。 キモいんだったら近寄らなきゃいいのにわざわざ悪口雑言を書き込みに近寄ってくるなんて
どういう神経してんだろ >>493
>国産言語(ハァ?)に誇りを持って選民意識がすっごーいっ
世界中のRubyistには通用しないねその煽り >>496
読解力が文盲レベルwさすがRubyistwww ナルシストが書いた詰め込みオナニーモルモン言語
世界中のモルモン教徒が愛用しています 私が億万長者になった日 – Medium Japan – Medium
Ruby on Railsの生みの親が見つけた人生で「最良のもの」
By DHH
https://medium.com/japan/4614d3f4a255 本当は恐ろしい分散システムの話
https://www.slideshare.net/kumagi/ss-81368169
マイクロサービスの終焉 | 開発手法・プロジェクト管理 | POSTD
http://postd.cc/the-end-of-microservices/
マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices
コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155
太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題 Rails & CoffeeScript で作られたサイトの改修を行っています。
基本的な疑問なのですが、CoffeeScript で「別タブを開いて次の画面に遷移する」ってどうするんでしょう。
JavaScript なら window.open( url ); ですむような気がするのですが。 自己レス。
素直に link_to タグのパラメータ増やすだけでした。。
スクリプトで出来るのかと思ってた。
>>507
すごく捨てたい。 CoffeeScriptはJavaScriptに変換できるのだから
比較的簡単に捨てられそうだが
でもCoffeeScript2なんてのがでてるのか?
こっちはES6への変換だから、こっちのほうが良いかもね Haxe(ヘックス)はOSSで、JSに型チェックを付けたような言語で(altJS)、
JS(ES5), Flash, PHP, C++, Java, C#, Python, Lua に書き出せる。
Windows8.1対応。IDEは、FlashDevelop
このサイトで、ブラウザでプログラミングして、実行できる
Try Haxe !
try.haxe.org/ flashdevelopってまだあるのか
10年前流行ってたな まさかflashが無くなるとはなぁ…思ってもなかった
学習コストが全部無駄になった クソッタレめ >>509
未だにRails多すぎワロタ
Railerが終わったなんてウソやったんや いやでも周りみんなバックエンド(サーバ側)はgRPCとgolang
フロントエンドはReact+RectNativeでwebアプリとスマホアプリを両立させてる感じになってきてるけどな
gRPCを間にかませば言語はなんでも対応できるが(PHPもRubyもなんでもOK)
こういう状況になると単純に言語の処理性能でgolangが選ばれやすい
なんつーかモノリシックなRailsウェブアプリケーション(HTMLはサーバ側で組み立てる)っていう開発スタイルが淘汰されてる うちの会社のアクセスログみると7割近くがスマホ経由なのよね
となるとwebサービスを作るならスマホアプリ化は必須要件になる
PCからアクセスするとGooglePlayとAppStoreのURLやQRコード表示するサイトも増えてきた
つまりスマホからのアクセスだけでいいや、と割り切ってる運営者が増加してる傾向にある
gRPCサーバー/クライアントを作り、スマホ側と通信する仕事が今後主流になるのは明らか(というか既に主流) それサイバーエージェントやDeNA、メルカリなどの大手だけじゃね?
gRPCでググると出て来る会社はこればかり
中小零細ベンチャーは未だにRailsとjQueryだろ 殆どの会社はウェブサービスを作りたいんじゃなくて
HTML+αを作りたいだけだからな 渋谷周辺だけ見ればそうかもな
あの一帯は日本のシリコンバレーになろうとしてるから技術レベルが高い 都内零細会社だけど最近作るのはgolang+vue.jsだよ >>523
vue.jsってことはWeex使ってNativeスマホアプリ化するのか? 文法的には俺もvue.jsのほうが好きだけど
うちのCTOがReact推しなんだよなぁ
それに従うしか無い >>524
零細だからアプリエンジニア居ないから外注でobj-c むかしむかし「これからはRIAだ!Flashでリッチなwebアプリケーションを作ろう!」という運動がありました
やってることは今のSPAと同じでした
しかし普及はしなかった
OpenLaszloというオープンソース・ソフトウェアもあった
http://gihyo.jp/design/serial/01/openlaszlo/0001
https://ja.wikipedia.org/wiki/OpenLaszlo
そして歴史は繰り返す
PCブラウザ向けwebアプリケーションをSPAで開発するよりも
ネイティブなスマホアプリ1本作ったほうがいい
SPA→ネイティブスマホアプリへの変換は簡単だから無駄にはならないけど
やっぱりネイティブAPIをゴリゴリ書いた本当のネイティブアプリには色んな理由から敵わないのさ
https://techacademy.jp/magazine/11652
>React Nativeは、AppleとGoogleのどちらかにも正式にサポートされていません。
>これはつまり、OSやAndroidから新しいアナウンスメントが公表されても、
>React Nativeで完全には動作しない可能性があることを意味します。 本の紹介。Stefanov も書いてる
入門 React ――コンポーネントベースのWebフロントエンド開発、2015
Reactビギナーズガイド ――コンポーネントベースのフロントエンド開発入門
Stoyan Stefanov, 2017 Rails Hub情報局: 素人がWebサービスを作ってみて分かった9つのこと
el.jibun.atmarkit.co.jp/rails/2011/09/web9-1e8b.html
スタートアップ企業で8年間Webの開発をしてみての反省点いろいろ - Masatomo Nakano Blog
独自フレームワークはやめよう
6. サーバ周りの人材をしっかり確保しよう
b.hatena.ne.jp/entry/blog.madoro.org/mn/84 Railsって本当に終わったの?
今から新規のプロジェクトでもRails使うのはアリ? サービス解開始数年以内にアプリケーションサーバが3桁行く計画ならRoRには向かないけど、そういう目論見がないなら十分選択肢に挙がる。
RoR で初めて、ホットな所を徐々に他のフレームワークに任せて最終的には管理画面だけRoRというのが平和な結末。 >>540
というかそこまでのアクセスを見込むんだったら、自分たちで技術調査をして負荷確認をして、とかやらないとね
それをこんなとこで聞いてしまうレベルだとどんなFW使っても炎上すると思うよ 今、巷で話題になってる質問箱ってサービスも
Railsらしいよ >>541
リクエスト当たりの収益が全然上がらなくて、APサーバの数は増える一方。
付帯する管理コスト、業務コストだけはグングン増えていつかは"慎重な検討の結果、本サービスを終了する事となりました"。
>>542
そう。
こんな程度のことも調査・検討しないでRoRはオワコン、今は○○とか言う人は何選んでも成果出ないとおもう。 >>545
PHPでRailsっぽいのってCakePHP? ぺじーは知らんけど、ルビーとバイチョンの違いなら >>2 に書いてあるよ 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
7WXCJUAQT8 GitHub - stimulusjs/stimulus: A modest JavaScript framework that works with the HTML you already ...
https://github.com/stimulusjs/stimulus ミニブログの Twitterのstats(統計)データ。
http://kaworu.jpn.org/kaworu/2008-01-16-2.php
- 350,000を超えるユーザ。
- 秒間600リクエスト
- 平均毎秒200-300コネクション。最大時は秒間800コネクション
- MySQLは秒間2,400リクエストを処理する
- 180のRailsインスタンスがある。MongrelのWebサーバを使っている。
- 1つのMySQLサーバ(1つの大きな 8コアのサーバ)と1つのスレーブ。スレーブは、統計とレポートのための読み込み専用(リードオンリー)。
- 雑用処理をするための30+のプロセス
- 8台のSun X4100s
- Railsでのリクエストの処理時間は200 msec
- データベースにかかる時間の平均は、50-100 msec
- 16GBの memcached Dockerの本番運用 | インフラ・ミドルウェア | POSTD
Dockerを真剣に使い、成功し、さらに多くのトラブルに遭遇することもなかった人を、
私は世界中で一人も見つけることができませんでした。
この記事で書かれている経験談は、社員と企業がダウンタイム一秒毎に11万円を損失するという犠牲の上に得られたものです。
過去の教訓から同じ過ちが繰り返されないことを望んでいます。
http://postd.cc/docker-in-production-an-update/ Docker in Production: An Update | Hacker News
https://news.ycombinator.com/item?id=13713788 Microserviceなんて最初からやるもんじゃ無かった
http://www.slideshare.net/AkiraMiki/20160722-microservice
マイクロサービスの終焉 | 開発手法・プロジェクト管理 | POSTD
http://postd.cc/the-end-of-microservices/
【翻訳】モノリシックなRubyからGoによるマイクロサービスへ | POSTD
http://postd.cc/from-a-ruby-monolith-to-microservices-in-go/
マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices
コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155
太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題 MySQLからPostgresqlにシステムが移行したんだけどログファイルに出されるSQLが、
select * from users where name = "hoge"
だったのが
select * from users where name = ? [["name"]["hoge"]]
みたいな奇妙なプレースホルダー形式になってしまった。
元の形式のSQLをコピペして、SQLコンソールで実行することがしばしばあったんで色々不都合なんだけど、元の形式で出す方法ってないかな?
(後者のは当然、シンタックスエラーになる...) 私が億万長者になった日
Ruby on Railsの生みの親が見つけた人生で「最良のもの」
By DHH
https://medium.com/japan/4614d3f4a255
考え直そうーーRuby on Rails生みの親でBasecampの創業者がスタートアップに贈る言葉【寄稿】
http://thebridge.jp/2016/04/reconsider
DHH:Railsがあれこれやらない、というところですかね。Railsにはやらないと決めた機能ですとか、却下した余計な装飾品ですとか、そういうのがたくさんあるんですが、
Railsにある20%のソリューションで問題の80%を解決できるようにしています。
http://kdmsnr.com/translations/interview-with-dhh/ @project = Project.find(params[:id])
Webアプリケーションによってはこのコードでも問題はありませんが、そのユーザーがすべてのビューを参照する権限がない場合には問題となります。
このユーザーがURLのidを42に変更し、本来のidでは表示できないページを表示できてしまいます。
このようなことにならないよう、 ユーザーのアクセス権もクエリに含めてください 。
@project = @current_user.projects.find(params[:id])
https://railsguides.jp/security.html#権限昇格 ActionCableでDeviseのcurrent_userを扱うにはどうすればいいですか? 2017年度 未踏成果報告会「MITOU2017 Demo Day」1日目
2018/02/10(土) 開場:09:57 開演:10:00
e/lv310182883 これから勉強するんですが初心者にオススメの
参考書とかサイトあります? 「10倍プログラマ」の神話、Ruby on Railsの生みの親が語った高い生産性のカギとは!?
http://hrnabi.com/2015/01/30/5463/ >>570
改訂3版 基礎 Ruby on Rails、黒田努・佐藤和人、2015
実践Ruby on Rails 4: 現場のプロから学ぶ本格Webプログラミング、黒田努、2014
黒田の本は、わかりやすい。
ただし、他の著者で、Rails 5 の本も出ているかも Railsはビュー周りがダメだな
なぜフォームヘルパーなどという腐ったものを作り出したのか?
普通にHTMLを書けばいいじゃないか そういう問題じゃないんだけどねw
よく知られた方法があるのだから
それを使いましょうと
フォームなんか
<form name="model[name]" 略
でいいじゃんかと
なんでそれをわざわざRubyのコードに置き換えるのかと 日本だと、10万円/1か月ぐらいのRoR案件もあんぞw あれって 中間が抜いてるせいなのかね? 元々が安いのかね? >>584
中間がガッツリ抜いて、第7, 8次とか第10次下請けとかまで降りてくるもんなー。 多重下請けで中間が抜き過ぎてるから下請けじゃない自社開発も給与が下がるマジック 1社、間に入ると、3割抜かれる
0.7 ずつ掛けていくと、
(顧客) 100 → 70 → 49 → 35 → 25 → 18
ハローワークでは、2次受けまでにするように言われる。
つまり、大手SIer の直受けまで。70 の所
それよりも下層の会社に、就職しないように言われる。
49 の所以下の会社 レイオフできるアメリカ
整理解雇の四要件で解雇しにくいので派遣をつかう日本 2次受けより下の仕事したこと無いけど会社とかどんな感じなの? 年金事件のは、別会社じゃなくて、単に同一会社の支店を、中国に作っただけ
国が異なるから、同一会社の支店を作れないから、別の会社を設立しただけ。
それが別の会社と、みなされただけ
外資系の会社の、日本法人と同じ。
便宜上、別の会社とみなされる 入力ミスって報道だけどインタビューでは
「どうみても日本人じゃない名前が入力されてた」
と証言してたなΩ
「誤入力」のせいで支給額が数万円減ってる人がいるそうだが
中国人口座に年金流出してないか
これあかんやろ Ruby on Rails Is Dead — 2018 Edition – JetRuby
http://b.hatena.ne.jp/entry/s/expertise.jetruby.com/is-ruby-on-rails-dead-2018-edition-407a618dab3a
DHH:Railsがあれこれやらない、というところですかね。Railsにはやらないと決めた機能ですとか、却下した余計な装飾品ですとか、そういうのがたくさんあるんですが、
Railsにある20%のソリューションで問題の80%を解決できるようにしています。
http://kdmsnr.com/translations/interview-with-dhh/ railsチュートリアルやってるんですが
実はRuby 1.9以降では、ハッシュの要素の順序が入力順と同じであることを保証していますが、ハッシュを特定の順序に依存してカウントするのは得策ではありません
という記述があり、なんで?ってなってます
ハッシュに順序性があるなら、それを利用して何が悪いのか? どんな偉い人が書いたものでも理由が書いてないものは
読み飛ばしていいってじいちゃんが言ってた >>602
そもそも、ハッシュは重複を許さない集合だから、順序は無い。
それを、ハッシュに追加した順番も、記録するようにしただけ
詳しくは、プログラム板のアルゴリズムのスレなどで、聞いてください >>605
それは知ってます。
Rubyが1.9は登録順が保証されてるのにそれに頼ってはいけない。 と記述されているようにみえるんですがなんで?と思ったんです。
実装されているなら利用して何が悪いです?
Ruby1.9未満に対する互換性とか? >>606
設計の筋が悪いから
実装してあるからといってinstance_variable_getを使いまくってるコードなんて気持ちわるいだろ? 筋悪いのはRubyの方だけどな。
拡張すればいいだけの話なのに、なぜか基本から変えてしまう。 >>608
何か基本から変えたっけ?
文字列の話ならPythonだってそうだし(おかげでPython2がまだ生き残ってる) >>607
筋が悪いかどうかは処理によると思います。ハッシュが順序性が無くてOrderdHashmapを実装する手間が無いのはありがたいと思いますが Rubyは登録順が保証されてるのだからそれを利用していい。
Perlなんか見てみろ。登録順が保証されない。
どうやっても保証されないとわからせるために
実行ごとに順番が変わるようになってる
便利さよりも、本質を学ぶならPerlだ
https://ja.wikipedia.org/wiki/Perl
> ハッシュの際に使われるシードがランダム化され、keys や
> values、each といったハッシュを利用する関数が返すキー/値の並び順が実行毎に異なるようになった。 >>606
現時点の特定の実装(CRuby)に依存した実装になることを理解した上で使えということ。
Hash から OrderedHash を派生させてそっちを使うようにしておけば、ソートされてることを期待していると言うことがソース上に明示できるし、将来仕様が変わったときに自分でソートして返すといったような対応もできる。 ハッシュの登録順が保証されるのは、特定の実装じゃなくてRubyの仕様だよ
Rubyの仕様に反する実装は実装側の問題で実装を修正すべき >>614
JISX3017 15.2.13.4.9 - 11
レシーバのそれぞれのキーと値の組について、処理系定義の順序で、 Hash は、現在の実装が、たまたま順序保証しているだけ。
もっと効率的な速い、アルゴリズムが見つかれば、変わる
単なるHash に、順序保証まで求めるのは、設計・筋が悪い
順序を保証したいなら、OrderedHash を使う
こちらは、順序を保証するのが目的だから、動作が変わることは無い
詳しくは、プログラム板のアルゴリズムのスレなどで、聞いてください >>615
古くてRubyの一部しか網羅してない中途半端な仕様がどうかしたの? >>617
> 順序を保証したいなら、OrderedHash を使う
はい、だからRubyはOrderedHashが使われています。
順序が保証されているわけですね。 django使ってみたけど、わかりづらいな
railsと違って自由度がある分、使いづらく感じた >>620
わかるわ。俺もレールの上に乗りたい
今PHPのLaravelと同時進行で勉強中だけどrailsの方が良さげかな
replの補完具合はrailsの方が上みたい。まだ序盤だからどう変わるかわからんけども YouTube の、full scratch で書く動画を見ているけど、
Node.js を、full scratch で書くよりも、
Ruby で、Sinatra を、full scratch で書く方がわかりやすい
Node.js + Express + Express Generator よりも、
Rails の方がわかりやすい
結論、Node.js の前に、
Sinatra を、full scratch で書いてから、Rails をやるのが良い >>620
なれると rails より django の方が良いわ 小規模なシステムを作るのはできるんだけど、ある程度の規模のをマルチプラットフォームで作ろうってときにどうやったらうまく作れるようになるのかね
どうしても行き当たりばったりになってしまって進まない マルチプラットフォームってこの場合どういう意味?
レスポンシブ対応のこと? rspec使っていて感じた違和感についての独り言
ベストプラクティスの中に、itの中のexampleは一つにしましょうってのがある
http://www.betterspecs.org/jp/#single
方向性としては否定はしないんだが、これができない場合がある。
それが何かっていうのにようやく気づいた。
一つは副作用があるメソッド。そもそも副作用は無くすべきだから
ないという前提に立てば、副作用に対するテストの回答がrspecに用意されてないのもわかる
itをそもそも特定の一つのsubjectへのexpectと考えれば、subject以外への変化
例えばファイルが作成されるとか、そういうsubject以外へのテストができない
(だから複数のexpectを使うことになってしまう)
もう一つはmock。doubleに対するexpect。これはメソッドを実行した結果でも副作用でもない。
内部実装に近いがメソッドの処理の中で行われる外部モジュールの呼び出し
it { is_expected.to ~ } みたいに書く所からの解釈で
まず処理実行 → 実行結果のテスト という流れなのだが、
mockを使った場合は、処理実行前に expectを書く必要がある。
普段実行結果が〜であることを期待して使ってるexpectとしては適切じゃない
ここからの結論として、itの中が複数になってしまうのは
・処理の中で行われることのテスト
・処理そのもののテスト(本質的なテストはこれ)
・副作用に対するテスト
この3つがうまく分離できてないからなんだ あー、説明面倒くさいからしないけど
一見関係なさそうに見えるけど一部は関係あるレベルか どうもGiven When Thenとrspecとの対応に違和感がある
contextにはしばしば、whenで始まる文章を書く
http://www.betterspecs.org/jp/#contexts
だがrspecと対応付けると
Given・・・context
When・・・it?subject?
Then・・・expect
となる。
どちらかが間違っているといいたいわけじゃない。
どちらも正しいと思うのだが、なぜwhenの使い方が違うのだろうか
○○という状態があって、DOした"時" (=when)
○○という状態の"時"(=when)
rspecではDO、つまりなにかを実行するというのが
subjectに埋め込まれてしまっていることか
実行までが状態になっている
そうか。rspecでは、(subjectを使った場合)Given - Then になってるんだな
subjectは遅延されて実行されるからといって、it もしくは subject参照時が
whenと考えてはいけないのか。遅延実行するのはあくまで内部実装の話だしな
Given - When - Then の方が俺的にはしっくりくるんだが、Whenというのは
通常一回しか実行せず、Givenの後と決まってるからGivenにくっつけても成り立つわけか。
(同様にThenの最初としてくっつけても成り立つんじゃないかな?それがitかな?) てすると実は正しい対応っていうのはこういうことなのかもしれない
Given・・・context(subject含む・subjectにWhenで実行する内容が定義されている)
When・・・なし
Then・・・expect(it含む・itでWhenで実行する内容を実際に実行する)
rspecでcontextでしばしばwhenで始めるのは、
なるほどそうか、subjectを実行したと仮定した内容を書いてあるはずだな
http://www.betterspecs.org/jp/#contexts を見直す
あー、やっぱりそうだ。contextそのものはGivenに相当するものなんだけど
contextにかかれているメッセージはWhenの内容だ。
で、もう一つ、contextにletで書いた内容と同じことを書く
つまりletでurl = error pageと書いてるのに、エラーページにアクスした時と
contextに書くのは重複していると思っていたが、そうか、
contextには、whenに続けて実行する内容を書くべきなんだ
つまりsubjectで実行することだな
Given When Then (GWT) も Arrange Act Assert (AAA) も
3段階なのに、なんでrspecは2段階になってしまったんだろうか?
状態を定義すると結果が確定する。間違いとは言わないんだけどね。
ちなみになServerspec、あれは状態を作るのを他でやるから
Thenのみになってると考えれば良いのだろう
subjectは存在するが、それは検査対象を明確にしているだけで
なにかを実行しているわけじゃない。
ってすると、subject(題材)という使い方は、それでよくて
subjectに含まれる、処理実行(Whenに相当するもの)を
subjectと分離すると、Given - When - Then の形になるかも でな、話は変わるけど、モック?スタブ?よくわからんけど
allow(モックオブジェクト).to receive(メソッド名) ってやるやつ
あれは、letかsubjectに入れちゃえばいいと思うんだよ。
だって、Givenに相当するものだろ?
だからitの中っておかしいと思うんだ
で、itの中はexpectだけにする
expect(モックオブジェクト).to receive(メソッド名) でもテストできるけど
それだとWhen実行前に書かないといけないので
expect(オブジェクト).to have_received(:メドッド名).once
こっちを使うべきなんだろうな
rspec-mocksのSpyという機能を使います
https://qiita.com/_am_/items/398b0782fa3754ff3878
そうすると、Given Then パターンだと
subject { allow(オブジェクト).to recieve(:メソッド) }
it 'ほにゃらら' do
is_expected.to なになに
expect(オブジェクト).to have_recieved(:メソッド)
end
という形になる。まあGivenの部分とThenの部分の両方で
同じようなコードを書く必要がるというデメリットはあるな
これはallowの方に名前をつけて、そのallowが呼ばれたことという形でかければ良いんじゃないかな? 例えばこんな感じ
subject { allow(オブジェクト).to recieve(:メソッド).named(’これ') }
it 'ほにゃらら' do
is_expected.to なになに
expect(これ).が呼ばれていること
// expect(これ).が2回呼ばれていること
// expect(これ).が呼ばれていないこと
end
こういう仕組みって有るのかな? >>633
expect(オブジェクト).to have_received(メソッド).twice
expect(オブジェクト).not_to have_received(メソッド) >>634
それは>>632で書いてあるとおりわかるんだよ
ただdryじゃないなってこと。
allowで書いたんだから、「それ」が呼ばれることって書くだけでいいじゃない? モデルはテーブルの行に対する対応だから単数形を使うというのは分かるんですが
コントローラは複数形を使うのは理由があるんですかね? >>636
名詞の形容詞的用法は単数形だからかな? >>637
その理屈だとコントローラも単数形になってしまわんですか? 開 2 ち ゃ ん ね る= 便 所 の 落 書 き ・ 痰 壷 の 更 に 劣 化 コ ピ ー の 3 流 掲 示 板
運 営 の 性 格 の 悪 い 引 き こ も り I T 土 方 メ ガ ネ ザ ル 早 く 死 な な い か な WindowsにROR入れるの大変すぎません?
エラー起き過ぎてストレスフリーで開発できない >>642
開発するためにWindowsを使うとか正気の沙汰じゃない、ありえん! WindowsならVM入れるかBash on Windows使うかDocker for windows使うかのどれかだな windowsでrubyは、お薦め出来ない
springの検知も遅いし、ていうか、使いもににならない?
私も頑張ってwinで構築して、やってられなくて諦めました gem入れるたびに動かないかもって思いながらやるあの苦行な
仮想環境がいい >>648
ほんそれ
動かないかもだけならまだましで
せっかく動いてるのに壊すかも
だし bundlerでも心配
gemのバージョン指定しても依存関係のあるgemで動かなくなることがある罠、そもそもgemが消えたり それはnpmでもpipでもmavenでも一緒だわな npmでも超重要ライブラリが作者の運営への不満から削除されて一時大パニックになってたな Windows10 + Vagrant でやろうかと思ったんだけど、これってもしかしてWSLで事足りる?
WSL使ったことないけどどうなんだろう Rails勉強中の20歳です
少し聞きたいんですが、どのくらいRailsができたら転職してもいいラインですか?
あるいは、エンジニアとして一人前? >>656
rails 用の gem を作って公開して、第3者の商用システムで採用されるレベルのちょい下位なら。
後は rails 以外の知識と経験。 >>656
rpecでテスト書けるならいい感じだよ、できれば、turnupも >>656
その質問を他人に聞きたいと思っている間は、たぶんダメだと思う。 railsを仕事で使ってる会社は大抵レールから外れた使い方してるから入門書とか殆ど約に立たないんだよな 入門書じゃ仕事にならない
↓
レールから外れる
↓
Rails使う意味なし
↓
Ruby使う意味なし >>661
レールから外れた使い方ってどうやるの? >>663
例えば複数のDBに接続していてdatabase.ymlにあたるものが複数あるとか >>663
次バージョン以降で追加される機能を既に自前で実装してるような状態。
結果的に複数の実践例ができてそのなかのいくつかの概念や実装が統合されて新しいレールになる。 実際の実装が知りたいの?
それこそ会社によって違うから知ったところで参考にならんよ 会社によって違うといっても
大抵レールから外れた使い方してるって
知ってるんですよね?
なんでそれを言えないんですか? >>668
社外秘に触れるかもしれないし、内容で所属組織が分かる。公開情報なら slideshare や speakerdeck 見たほうが速いし詳しい。 へぇー、社外秘に含まれるかもしれないのに
なんで他社が大抵レールから外れた使い方をしてるって
知ってるんですかねぇw >>670
そりゃあ技術者同士は横で繋がってるし、キモの部分の技術交換はこんな掲示板でやらないからねえ。
提供する技術すら持ってない人には難しい話かもしれないね。 >>672
横の繋がりを持つ技術者たちはRailsをいかにうまく使うかノウハウ交換してるからね
レールに乗れないからRails要らねRuby要らねとか愚痴吐くしかできない人には難しい話かもしれないね レールから外れた使い方ってrailsのソースコード読んでどうにかするスキルなのでここで変な煽り入れてる連中には無理だと思うよ いやRailsのやり方を踏まえないでやるからむしろ簡単だよ Rails難しい
ちょっと参考書に書いてないことをしようとすると、もう訳が分からなくなる >>681
railを外れると難しいよ、最悪、ソース読まなきゃ Railを外れるっていう表現が気に食わん
そこでRailが途切れてたらその先はお前がRailを作るんだよ レールはあるけど、初心者過ぎて
レールがわからないから、レールを外れる
でいいんだよ とあるブラウザを作ってたような会社の Rails のコードを読んだら訳が分からなかった。w
きちんと段階を踏むとか、英語の資料を読みあされるとか、
gem で提供されるコードの中まできっちり読むだけの時間と根性があるなら別なのかも知れないけど、
いきなりあれに触れてもどうしようもないというのが素直な感想だったなあ。 プログラミング歴6ヶ月の僕が自社サービスRailsエンジニアになりました!〜実際の転職活動について〜|ゆうすけ|note
https://note.mu/ysk1180/n/n1b6ce132dbb6
僕はなぜ銀行を辞めたのか、なぜITエンジニアになったのか (+ 実際の転職活動について)|ゆうすけ|note
https://note.mu/ysk1180/n/nd5d55b19193e >>684
自分でRail引いて走ってたら
後から誰もついてこなくて別のRailが出来てた件 【ホリエモン】なんでみんな就職するの?やる気がない人ほど起業して利益率の高い仕事を選択し、有望な者に投資しろ
https://www.youtube.com/watch?v=y3WFObrOIoQ
ホリエモンのQ&A vol.155起業のすすめ
https://www.youtube.com/watch?v=2n1O4oUeIXg
堀江貴文「大企業に就職なんて、とっくにオワコン」「今の時代、金ですらオワコン」
https://www.youtube.com/watch?v=gSvIk_Bnwlo
堀江貴文の名言がすごい!「つまらない仕事なんか今すぐ辞めろ!楽しいことだけやれ!」
https://www.youtube.com/watch?v=4w3XOl5CoU8
堀江貴文 決められたレールの上を歩く⇒人生終了で、自殺者増える
https://www.youtube.com/watch?v=CYRo8o2Y_D8
【堀江貴文】※サラリーマン必見!君らいい加減仕事辞めたら?wはっきり言って全部無駄だ!!
https://www.youtube.com/watch?v=IgyRIVdvxhk
【与沢翼】労働収入を高くしても無駄!税金でほとんど持っていかれますよ。金持ちになるにはたった2つしか方法がない
https://www.youtube.com/watch?v=A-5lQ2rDmc0&t=354s
【与沢翼】サラリーマンとして生きるのはリスクでしかない。従業員は創業者に利用されているだけだということに気づきなさい
https://www.youtube.com/watch?v=uPoTvbr5VDk&t=204s
これからは個人の時代!ヒカルは話が上手いしヒカキンは編集が上手い。
これからの通貨の未来はどうなるのかも話そう
https://www.youtube.com/watch?v=4hQngvBCugA
個人が大金を稼ぐ!ライブ配信時代が本格的にやって来てその領域は
さらに拡大していき無名から著名になる人も増加する
https://www.youtube.com/watch?v=1H0R-kBtUOo #new.html.erb
<%= simple_form_for @math do |f| %>
<%= f.input :num_1 %>
<%= f.input :num_2 %>
<%= f.button :submit, "OK!" %>
<% end %>
class CreateScores < ActiveRecord::Migration[5.2]
def change
create_table :scores do |t|
t.integer :num_1
t.integer :num_2
t.integer :ans
t.timestamps
end
end
end
num_1 と num_2 の積を計算して ans にに保存したいです。
よろしくお願いします。 ぼ、ぼ、ぼくは、お、お、おなにーが、す、すきなんだな、、 【毎年20万人、定住″】 なぜ移民が必要なのか? データだけであなたは強烈に思い知らされるだろう
http://rosie.5ch.net/test/read.cgi/liveplus/1529201770/l50
日本人が毎年30万人減ってるので、チャンコロをじゃんじゃん補充しまーす! プログラミングを誰でも習得できる方法は、「前場アキドルのプログラミングマスター方法」というブログで見られるらしいよ。ネットで調べると見られるらしいです。
QE3KN AirbnbがReact Nativeをやめたことに対する世間の反応 - Togetter
https://togetter.com/li/1239438 サーバーサイドはPHPでCGIが書ける程度で
RailsもRubyも入門サイトを1日読んで勉強した程度の初心者です
link_to t('xxx.yyy'), zzz, method: :delete, data: { confirm: t('xxx.yyy') } %>
で表示されるリンク先や文字列や処理ってどこに書かれているんでしょうか
当然ディレクトリ構成とかが違うので探しかたを教えて頂きたいです
viewに出力される HTML を吐く ruby が入ってて
controllerに変数設定や処理が書かれてるって程度の知識何ですが
controller内にそれらしい処理をする関数?はあるんですが
関数名とかが全く一致していなくて config/route.rb にもそれらしい記述が無くて
xxx.yyy が含まれるファイルを controller ディレクトリ内で検索しても出てこないんですよね…
どうやって view のリンクをクリックした時にコントローラーを呼び出してるのかよくわかりません
初歩的な質問で申し訳有りません そうですよね
レベルの低い質問をしてすいませんでした
ウェブアプリ書くならRailsがいちばん簡単って言われたんですが
どこまでが予約語でどこからがユーザ定義なのかもわからないし
どのファイルに何が書かれてるかがわからなくて
requireやinclude宣言もないし
Railsに手出すのは諦めます
スレ汚し失礼しました xxx.yyyで探しても出てくる訳ない罠
link_toで検索汁 いろんなスレで文脈ガン無視でRubyの宣伝してる糖質に騙されちゃったんだね、かわいそうに。
簡単だろうがなんだろうが、黎明期からRubyはドキュメント軽視。他の言語に差を空けられた原因のひとつでもある。
困って検索してもてきとーなやつらがてきとーにやったらたまたま解決できたというようなてきとーなメモ書きしか出てこないよ。 「ソースが仕様だソース読め」
分からないときにこれを実践できる人じゃないとRubyを使いこなすことは出来ないよ。
これは教祖様が言ってたことで取り下げてないから今でも有効、従ってRuby信者も反論できないRubyの真理だよ。
てきとーに書いたらなんか知らんけど動いたやったーって程度でいいなら別だろうけどね。 >>719
僕は英語が読めないんですってアピールしなくてもいいのに (Railsをさわったことがある人が1から動かすまでのアプリを作るのは)簡単
環境構築やさわり方覚えるまでのハードルが高すぎるんだよな
かといって大規模なシステムだとパフォーマンスぼろぼろだし
サーバーサイドJavaやPHPがかけるならRailsなんてて出さなくていいぞ >>718
ありがとうございます
おかげさまでlink_toだけはなんとかわかりました
これメソッドだったんですね
rubyは()なしでも2単語目以降が引く数のメソッド呼び出しになるんですね…
zzzというか2つめの引数にurlがはいってることまではなんとかわかりました
疑問なんですが自分で a タグ生成するのと何か違うんでしょうか
単に記述が短くなるように用意されてるってことでしょうか
タグ出力自動でやっちゃうと改行とかHTMLのインデントとかぐちゃぐちゃになりそう…
あと実際に生成されるHTMLのURLがrouteにかかれてなくて
このリンクをふんだら処理がどこにとぶのかがまたわからなくてつまってます
routeにマッチしてないのに404以外になるのってなんでなんでしょうか
configにも大量のファイルがあるのでどっかにもroute情報がかかれてるんでしょうか
エントリファイルからinckudeやrequireしてくれてたら追跡も楽なのに次にどのファイルよめばいいかがぜんぜんわからない
controllerのなかにそれらしい処理内容自体のメソッドがdefされてるんですが
viewのなかに1文字もそのメソッドがかかれてなくてどこから呼ばれてるんでしょうか >>722
パフォーマンスボロボロになるような規模のサイトなんてそんな数ないんだから気にしなくていいよ 「たのしいRuby 第5版、2016」を3回読んで、
無料のRails チュートリアルをやる
さすがに、Rails でも、勉強せずにはできない
Progate でも良い
puts a
p a
など、さすがに、これもやった事がない人には無理 view不要なアクションだけ追加するのってどうするの?
リンクをおすとajaxで送信だけしてDB更新するけど
もとの画面はペーj期遷移せずにajaxでメッセージだけ表示するみたいなことがやりたい ページ遷移なしで表示かえるってサーバーサイドでは無理
javascriptでDOMいじるしかないだろ 調べてみたけどメッセージ表示するだけでPushStateとかいらない
結局標示変更する部分はjQuery使ってるっぽいし何が違うかよくわからない
jQueryは分かるけどcoffeeとかかけないし
kinktoにremoteってかいてアクションを追加しなくてもjs側でサーバーへのリクエストを作ってくれるってこと? ダイアログでメッセージ表示するなら JavaScript を書くしかない
coffee 分からなかったら生 JS でも書ける >>731
coffeeはやめとけ。もう未来はない。
Railsユーザーの全員がいつ非推奨になるのか?って思ってる RailsとjQueryは組み合わせ方さえわかれば相性がいい
RailsにはTurbolinksという機能がある。PushStateとかTurbolinksの機能
重要な点をざっくりいうとAjaxを使い、ページ遷移しないということ
ということでページ遷移しないという前提でコードを書く必要がある。
何をしなければいけないかというと、サイトで使用するJavaScriptは最初に
全て読み込むということ。たとえ他のページで必要なコードだとしても。
JavaScriptはページ単位で作るのではなく、サイト単位で作る
そのために現在のページに要素が表示されていなくても、
そのためのコードを実行させる必要がある。これがjQueryと相性がいい
例えば $(document).on('click', '.hoge', function() {・・・}) と書くと
現在のページに .hoge が表示されてなくても、表示された時から使えるようになる
また $('.hoge').show(); とか書いた時 .hoge が無くてもエラーにはならない
jQueryは0個以上の要素に対して処理を一括で適用する。
その仕組みがページを遷移しなくても要素が増えたり減ったりする
Railsのデフォルト機能のTurbolinksに対応させるのに相性がいい
下手なやつが作ると、Turbolinksが提供するturbolinks:loadとかのイベントで
ごちゃごちゃやるハメになる 1週間ぐらい、じっくりと腰を据えて、無料のRails チュートリアルをやれば?
学生でも、Rails合宿に行って、じっくり勉強したりする
まず、各フレームワークの仕組みを勉強しないといけない。
そのフレームワークのやり方以外の方法で、やってはいけない
フレームワークでは、フレームワークのやり方を守るというのが、一番大きいテーマ。
Rails のやり方と違うやり方をすると、コードレビューで必ず直される
YouTube に、伊藤淳一(junichi ito)の動画も、一杯ある YouTube に、伊藤淳一の動画が一杯ある
Junichi Ito
https://www.youtube.com/channel/UCekUxQPwLf-YCxbGtqeEmxg
【デバッグ解説動画】RailsアプリでAjaxがうまく動かないときに確認するポイントあれこれ
https://youtu.be/Nf0QjFx5O5k
Rails 5.1で作るVue.jsアプリケーション 〜Herokuデプロイからシステムテストまで〜
https://youtu.be/ycOeM2umXkY ajaxの方はjsで何度も実装したことはあるけど
Railsの方がまだ慣れてなくてよくわからんのよね
ためしに描いてみたけど view 見つからんって怒られた
[config/route.rb]
member action 追加
[views/index.html.erb]
link_to でヘルパーパスに飛ばしてオプションで remote:true と id:ajaxつけた
メッセージエリアの空の div#msg 追加して
$(‘#ajax’).bind("ajax:complete", function(xhr, response, status){
let result = JSON.parse(response.responseText)[0];
$(‘#msg’).html(result);
})
[controllers/]
アクション定義にDB更新して format で結果メッセージ返すコード追加
viewいらんとおもうんだけどアクションだけってかけないの? これもう action 追加とかしないで
link_to から js の onclick メソッドに飛ばして
js でリクエスト投げる方が早いんだが
Rails 的には汚い書き方になるん? いやすまん 何言ってんだ
いずれにしろDB更新するのはサーバーサイドで書かにゃいけないからコントローラーアクションは必要だったわ フロントエンド部分をAjaxでやるのなら
Rails側はモデルのメソッドを直接呼べればそれで十分だと思うよ。
もちろん外部からアクセス制御は必要になるけど
それがコントローラの役目になるんだろうけど大したことしないから
コントローラー取り払ってモデルとコントローラを合体させたものが
作れたらそれが良い remote:true がturbolink ってやつなのね
でこれをつけると
respond_to do |format|
で format.js にマッチするらしくて
今までバカの一つ覚えで format.html に render の上書き描いてたから
これを通らずにでデフォルトの render テンプレ探しに言ってたっぽい
format 関係無く
render text ‘終わった’ ってかけば
view テンプレートは探さなくなってエラー消えたわ
けど結果受けとってDOM変えるのが動かん
リンクに ajax 変更するDOMに msg ってIDつけて
$(‘#ajax’).bind("ajax:complete", function(xhr, response, status){
let result = JSON.parse(response.responseText)[0];
$(‘#msg’).html(result);
})
こんなJS埋め込むだけじゃダメなんか コントローラーでtextを返してjsでうけとるんじゃなく
js自体を返せばいい
リンクをクリックしたらブックマークレットみたいにJSが動いてDOMが変化するイメージ >>742
違うぞ。色々書いていたが書き込めなかった remote:true がturbolink ってやつなのね
でこれをつけると
respond_to do |format|
で format.js にマッチするらしくて
今までバカの一つ覚えで format.html に render の上書き描いてたから
これを通らずにでデフォルトの render テンプレ探しに言ってたっぽい
format 関係無く
render text ‘終わった’ ってかけば
view テンプレートは探さなくなってエラー消えたわ
けど結果受けとってDOM変えるのが動かん
リンクに ajax 変更するDOMに msg ってIDつけて
$(‘#ajax’).bind("ajax:complete", function(xhr, response, status){
let result = JSON.parse(response.responseText)[0];
$(‘#msg’).html(result);
})
こんなJS埋め込むだけじゃダメなんか 何が書き込み禁止されてうrんだか。
リンクリンクリンクページページページ remote:true がTurbolinks
remote:true がTurbolinks
remote:true がTurbolinks 何が書き込み禁止されてうrんだか。
リンクリンクリンクページページページ
remote:true がTurbolinks
remote:true がTurbolinks
remote:true がTurbolinks >>731,737,739,740,742 は自分だけどそれ以降はちがうぞ? >>736
の、Rails + Vue.js の動画を見れば?
Ajax で、DB を更新して、画面表示してる ルートとヘルパーパスについて聞きたいんですが
既存の route.rb が
resources か action URL の1行だけで
member や collection の記述がないんですが
この場合パスヘルパーは使えないんでしょうか
resources :users do
member do
get :action
end
end
みたいにかけば action_usr_path は使えるんですけど
resources users
get 'users/:id/action’ => 'users#action’
とだけ書いた場合
追加した action_user_path が undefined になります
view には usr_path() + ‘/action’ と書くしかないですか? エラーのハンドリングってどうしたらいいの?
調べてもエラーのハンドリングは勝手にやってくれるから
自分でやんなくていいって記事ばかりなんだけど
データベースアクセス中に何かおこったら全部502とかになっちゃうので
エラーページに飛ばしてメッセージ表示するぐらいはしたい
フォームボタン押したらアクション先で502が起こった時どうやって捉えたらいいの? railに乗る気が無いならrails使うべきではない >>753
は? 502エラーで表示される画面を変えるだけじゃん
すでに502エラーページに飛んでるだろ?
すでにメッセージ出てるだろ?
その画面をお前の好きなデザインにするだけだろ >>752
>get 'users/:id/action’ => 'users#action’
こんな風に文字列で定義しちゃうとパスヘルパーは定義されないので
user_path(id) + ‘/action’とするしかないですな 英語のエラー画面が出れば、それを日本語にするだけじゃないの?
国際化は自動的にやってくれないの?
設定ファイルに日本語と書けば、自動的に日本語に変わらないの? エラーを日本語に翻訳されたら余計判らなくなるからやめれ >>755,758
指示もよくわからないんだけど
設計時に意図してない502エラーが出るから
それをハンドリングして適切なエラー画面を出してくれって意味かなと
ただアクション内で502エラーだけを捉える方法
ってあるのかよくわからなくて
エラー何でもかんでも rescue するのってよくないよね? あと
フォームの値チェックして
OKだったら確認画面だして
それもOKだったらDB更新って仕様なんだけど
3つの遷移全部アクション書かなきゃダメ?
確認画面だしてから値チェックしてエラーor正常ならDB更新なら
フォームに confirm つけるだけでアクション1個でいいんだけど
値チェックしてから確認画面出すのって1回サーバー経由しないと無理だよね? そういうの面倒だからみんなjavascriptいっちゃうんだな ajaxわからない
remote:true でコントローラから js 帰ってくるでしょ?
controler で
render js: “$(‘#popup’).html("<%= j (render ‘point_form') %>”);”
って書くと動かなくて
テンプレートの js.erb に
$(‘#popup’).html("<%= j (render ‘point_form') %>”);
って書くと動くのなんで?
この1行のためにテンプレート増やしたくないんだけど render js: “$(‘#popup’).html(\"<%= j (render ‘point_form') %>\”);”
じゃね?
知らんけど ダメだわ
#がコメント扱いになる
あと Rails の view の js の文字列の中に Rails で生成した文字列入れるのってどうやるの?
<%= f.submit '送信', :class => 'button', :html => { :onsubmit => "return window.confirm('<%= (t 'confirm') %>)" }
的なことを書きたいけどどう書いていいかわからん
フレームワークがネストしてると文字列の扱いがクッソ面倒だな RailsはAPIサーバーに撤すればいいじゃん。
ver5でAPIモードが付いたけどそういうことだろ。
SPAフレームワーク使っても使わなくてもいいけどフロントでAPI経由でJSON取って構築。
シンプルになったな! >>760
だーかーらー、正常に502エラーがでてるだろ
それでいいんだよ。
気に食わないなら見た目を変えればいいだけ >>766
APIサーバーって言ってもな、ログインとか少しだけ必要だったりするわけだよ。
APIモードっていうのは失敗だった。
APIアクションを簡単に作れるようにすべきだった レールに沿って一本道じゃなく
Laravelみたいにモジュールを
組み合わせられればいいのに >>769
Railsもモジュールを組み合わせるが?
そもそもレールは一本道ではない。切り替えられる。 >>763-764
所々に、全角文字が混じっているから、動かないのでは?
>>765
%()・%Q() は、ダブルクォートで囲むのと同じ。
変数・定数の展開もできる
%q() は、シングルクォートで囲むのと同じ。
変数・定数の展開はできない
Rubyで%記法(パーセント記法)を使う
https://qiita.com/mogulla3/items/46bb876391be07921743
「パーセント記法 クオート」などで検索! パーセント記法って恣意的なクソ文法だよな。
ぜんぜん直感的じゃない。 >>765
一番外側が Rails なんだから
> js の文字列の中に Rails で生成した文字列入れる
ではなく
Rails の中に js の文字列を入れるだけだよ
<%= f.submit '送信', :class => 'button', :html => { :onsubmit => "return window.confirm('" + (t 'confirm') + "')"
ためしてないけどこれでいけるはず
ちなみに onclick つけたければ f.submit じゃなく form_for か form_tag のほうな なぜこんなに順位が落ちてるんだろう
パフォーマンスかねぇ?いい言語だと思うんだが 省略してこう書ける
こういう風にも書ける
みたいに書く分には好きなように書けるが読む人は全部知ってなきゃ読めないし書いた人違うと毎回別の言語みたいでチームだと採用しづらいんじゃない?
あと単なるエイリアスと、そう見せかけてちょっとだけ違う機能が乱立しすぎで混乱を招くとか。 https://www.benfrederickson.com/images/github/language-popularity/oldthing_u.svg
たしかに、Rubyは上昇のカーブが落ち着いた
Ruby on Rails は、一時期のバブルやフィーバと呼ばれた時代を乗り越えた
その一方で未だにペチパーと揶揄されるPHPの成長が著しいのも立派
ところで、今時はやってるとか言はれてる:
バイソンとかいうふのは、影も形も無い
おかしいなあ、一時期は Zope(>>2) とかRubyモドキの Django みたいな
フレームワークもあったのに、影も形も泣くランク外で彷徨ってるみたい
PHP あるいは Rails、その二強時代は、今後も安定して
続いていくってことなんだろなぁ >>786
https://www.benfrederickson.com/ranking-programming-languages-by-github-users/
の記事の一番上に出てるけどPythonはアクティブユーザー数Java抜いてJavascriptに次ぐ2番になったよ。
続いてC++、C、その次がPHP。
いくら英語が苦手だからってそのくらい見れば分かるでしょうに…
あとこれあくまでgithubのデータを解析した結果だからね。
大企業で組み込みとかやってる人はこんなところにカウントされることは稀だからCやC++は本当はもっとユーザー数いると思う。
Rubyはその、アレやけど… >>786
もちろん、汎用言語としてバイソンが急速に知名度を上げてるのは知ってるよ
とういうか、そもそも過去の TIOBEランキングにおいて、Rails フィーバーといふ
一時的なバブル現象はあったけど、Ruby はただの一度たりとも バイソン様を
越えたことなんてありませぬ
で、ここはム板ではなくWebProg板なんだけど、>>786は、それほど知名度が上がってる
バイソン様なのに、Webの世界ではあいも変わらず、天下の「GitHub様のデータ解析」によれば
ランク害を彷徨ってるといふのだから面白いなぁといふ、ただそれだけの話なんですよ
にもかかわらず、>>786のカキコからわずか30分あまりでバイソン様スゲーといふレスが
返るあたり、>>2 のトラウマもまた、健在といふことなんでしょうね いやぁ、たしかに>>487氏が指摘したように、プログラミング言語の
ランキングではJavaを抜いて2位に登り詰めたバイソン様ですら
Web界ではランク害を彷徨っているのに、Rubyは一時期のバブルが
弾けたとはいえ堂々と未だに2位と上位へランクインしてるわけです
>>2 を持ち出すまでもなく、Ruby がなかったら…とか、
どうして Python on Rails ではなかったのかとか、
>>487氏とそのお仲間達の心の声が響きますね 濁音と半濁音の区別がない言語を母語とする方ですかね >>786の画像は「Languages to Maybe Avoid」節の中のもので、
まずPHP、Ruby、Objective-C、CoffeeScript、Perlのアクティブユーザー*率*の減少ぶりを示した上で
その5言語のアクティブユーザー*数*を示したものだね
アクティブユーザー率の減少傾向を根拠に「避けるべき言語」にノミネートされたのが該当5言語で、
その中でRubyはPHPに次ぐアクティブユーザー数があると示したグラフであるに過ぎない
(しかし率だけじゃなく数も減ってんのかRuby...)
どうしようもなく英語が読めない人なのか、あるいはミスリードを試みているのかな? 掌田津耶乃が書いた、フレームワークの本。
他にもゲームエンジンでは、Unity, UE4 も書いてる
Spring Framework 4 プログラミング入門、2014
Spring Boot プログラミング入門、2016
Node.js超入門、2017
Python Django 超入門、2018
つまり、Railsが減って、Node.js, Go なども伸びている さすがにひとりのライターが書いた本だけで
判断するのは無理がある
ある程度の冊数で比較しないと ttps://pbs.twimg.com/media/DjCWzQYU4AAng_H.jpg 掌田津耶乃が書くようなフレームワークは、需要が伸びている分野
需要が伸びている分野では、出版される本の数も増える。
Unity, swift, go, python
JavaScript は、常に新本が出る >>797
いや、恐らくこれは氏に対する皮肉が多分に入っているぞ lang=enがいつの間にか日本語に戻るから修正してくれって言われたんだけど
Railsで書かれたシステムって勝手にPOSTやGETでパラメータが送られてるんだけど
どこに設定してあるのか全くわからん
書くのは楽だけど人の書いたコードが全く読めない
viewにもcontrollerにも一言もロケールっぽい変数出てこないのにどこで消えてるんだよ Railsで書かれたシステムを解読する時ってどういう順番で見ればいいの? 無料のRails チュートリアルで勉強すれば?
rails console で、環境変数を調べるとか?
OS の環境変数か、設定ファイルから読み込んでいるのかも?
1行ずつ、Rails のソースコードを読む必要はない。
大雑把に、どういう処理をしているか、コメントを読むだけで十分 >>800
それはRuby・Railsの問題じゃない。
それに気づかない時点で、Ruby・Rails以前の
基礎知識が足りてない いや普通は before action かいてヘルパーパスで勝手に伝わるから書く必要も読む必要もない
それがおこってる時点でわかってないやつが書いてるんだろうから探すのは大変だぞ
link_toで絶対パスをかいてるとか
まさか自分でリクエストトークン管理してたりしてないよな… じゃあどうやって勉強したらいいの?
1から作ったことはないけどいきなり Rails でかかれたシステムさわることになることってないの? Rails の form_for に複数のオプションをつける方法が毎回わからなくなります
url method confirm remote:true id class name
すべてつける場合どう書くのがいいのでしょうか
ブログあさっても複数指定してるものがそもそもあんまりなくて
data だったり html だったり : だったり => だったり書き方が違いすぎる ついでにいうとsimple_form使われてたりするとまた全然オプション違うので注意 >>811
無料のRails チュートリアルを読めば?
これだけで、環境構築・SQL・Linux コマンドなど、数十の技術を学べる。
LinuC など、これらを別々に勉強すれば、10年以上掛かる >>812
Viewヘルパー消えてほしい
HTMLで書けることをなんでRubyのコードに
しなくちゃいけないんだか。全然便利になっていない はじめてみたときどこに定義されてるかわからんかったわ
まさかメソッド名が勝手に作られてるなんて思わないし thタグとか書くのにわざわざ content_tag :thとかあほかよ >>817
それなw
俺、昔オレオレで作ったことあるんだが、
Viewヘルパーのようなものは作らないで、
ビューのHTMLに書いたメタ情報をパースして変換するようにしたよ
例えば、こんなRails混じりの何が生成されるのか
全く予想がつかないコードを書くぐらいなら
<%= form_for @data do |form| %>
<%= form.text_field :name %>
<%= form.submit %>
<% end %>
こんな感じでいいだろと
<form rails-form-for="@data">
<input type="text" rails-form-input=":name">
<input type='submit'>
</form>
コードは長くなるが、HTMLの知識をそのまま活かせる
HTMLをそのまま書いたものに、+αでRailsが解釈する属性を埋め込む
それを解釈して、HTMLタグを書き換える。
(うまく作れば)HTML Validで作ることも可能 Ruby 内で、JSX を使えるようにしろ!
JavaScript(JS) 内で、JSXは使えるし、
JSX内で、JSも使える
どちらの言語からも、乗り入れ可能なのが望ましい >>818
これの方が全然いいな。
なんであんなセンスないやり方放置してるんだ?互換性のためか?
新規は避けるだろあんなん ルビィスト(笑)はhtmlみたいな低級マークアップ言語には触れたくもないのだよ その驕りが衰退を招いたんだわ
WebはHTMLから離れては生きられないのよ 基礎から学ぶ Vue.js、mio、2018/5/29
Vue の本が出た bootstrap 使ってると長ったらしい同じクラスをつけた似たような記述が何回もでてきてレイアウトちょっとかえるだけであちこち書き換えないといけないから
<h2><%=label=></h2>
<p><%=contents%></p>
みたいなのをサブルーチン化してクラスかくのを1回ですませたいんだけど
ブロック複数わたせて複数回よべるようなサブルーチン化って Rails ではできないの?
def card(&block1, &block2)
とはかけないし
card.html.erbに
<h2><%= yield :head %></h2>
<p><%= yield %></p>
ってかいて
<%= render layout: ’card’ do %>
content_for :head do
…
end
…
end
だと複数回よぶと重複してくんだよね
結局ながったらしいクラス側を変数にして
@card_label_class=…
@card_content_class=…
<h2 class=“<%=@card_label_class%>”>…</h2>
<p class=“<%=card_content_class%>”>
でしのいでる…
きれいに管理する方法ってないの? ないよ
欠陥言語だし
つーか CSS でセレクタうまく使えばクラスつけなくてもスタイルは1元管理できるだろ bootstrap のクラスをあてないと
bootstrap ベースのテンプレートやテーマをあてるときに調整しなおしになる
本当は CSS セレクタで bootstrap のクラス名が指定できれば1番いいんだけどねー
CSS4 でそういうのサポートしてくれんかね SASSでどうかけばいいんですか?
SASSでできるのって結局 bootstrap のスタイルを上書きして展開するだけで
bootstrap のクラスをあてる
(あとからテーマやテンプレートをあてられる形にする)
って無理じゃない? >>883
独自classにbootstrapのスタイルを継承して内容を含めるんだよ 継承も全部は使えないけどね
mixinとか使って生成しているのもあるから >>835
継承するには import しなきゃいけないけど
そうすると bootstrap の中身って全部展開されるんだよね?
@import ‘bootstrap’
ってかかずに
.myclass { @extend [bootstrap class] }
ってできるの?
画面を動的に構成するような場合
遷移ごとに使う部品だけのCSSやJSを読み込むようにすると
CSS(SCSS)分割してかきたくなるけど
全部のファイルに bootstrap の中身が展開されちゃうよね
application.scss に全部の画面遷移の全部品のスタイルかくってこと?
それとも bootstrap の中身が重複して何回もよみこまれても気にしなくていいのかな そもそも scss で継承できるのクラスやIDとかだけで
セレクタで構造指定した中には使えなかったはず
>>829 の例だと
<div class=“accordion>
<h2></h2>
<p></p>
</div>
に対して
.accordion > h2 { @extend }
とはかけないでしょ
@media とかのなかも使えないしいうほど sass が万能ってわけじゃない
結局CSSが楽にかけるだけでCSSでできないことはsassでも無理だよ > .accordion > h2 { @extend }
> とはかけないでしょ
普通にかけるけど?
やりたいことはCSSでできることなんだから、
sassでできるよ bootstrapはCSSなんだから、
bootstrapでできること = CSSでできること
CSSでできること = sassでできる あれ? かけるの?
前にたようなことやろうとしたら子孫系のセレクタには extend 使えないって記事複数みかけたけど 試しにかいてみたけど
select, input {
@extend form-control;
}
ってかいてもホバーエフェクトがでない
なんで? select, input {
@extend .form-control;
}
こうだろ 普通にできるな
https://jsfiddle.net/g803kutm/
--------
<div class="accordion">
<h2>h2</h2>
<p>p</p>
</div>
--------
.foo {
color: red;
}
.accordion > h2 {
@extend .foo;
} 確かに子セレクタで @extend できないってブログいっぱいでてくるね
最近のバージョンでできるようになったとか? >>843
やっぱりだめ
form-control のホバーエフェクトがでない
:hover も明示的に継承しないとだめなのかな
それとも form-control っていうクラスがついてることで JS がなんかしてるのかな SASS のextend は様々な制限があるから、
mixin を使えば? Web制作者のためのSassの教科書 改訂2版、2017
SASS のimport とか、extend は難しいから、この本を読んでいないと無理。
永遠にハマる!w
extend は、制限が多いから、mixin を使った方がよい。
import は、パーシャルとか知っていないと出来ない
bootstrap のような巨大フレームワークは、初心者はやめた方がよい。
もっと小さいやつを使うか、フルスクラッチで練習した方がよい mixin は bootstrap 側が定義してくれてないとダメじゃないの いや、、そんなに難しいか?
なんの問題もなくbootstrap上書きして使ってるけど 上書きっていうのは、上書き用のscssファイルを用意してclassや変数とか上書きしてるって意味 話がかみあってない気がするけど
よくあるのは bootstrap の基本デザインを使いつつ
自分のスタイルを追加、上書きして微調整だけど
>>833がやりたいのは自分では一切スタイルをかかずに
デフォルトのbootstrapや(テーマ、テンプレート)にデザイン任せる
つまりHTMLにbootstrapのクラスをかかずに
bootstrapに用意されてるスタイルのみをあてたいってことでしょ いつまで、できないとか結論出てないような感じで終わらねーんだよ?
scss知ってりゃ、やらなくても最初っからできるとわかっていることをいつまでグチグチ。
scssのビルドが入るからオンラインでデモ作れなくて面倒なんだよ
俺がやってやるから感謝しろボケども
[index.html]
<!DOCTYPE html>
<head><link rel="stylesheet" type="text/css" href="style.css"></head>
<body>
<div>
<button type="button">Primary</button>
</div>
<button type="button">normal</button>
</body>
[style.scss]
@import "bootstrap.min";
div button {
@extend .btn;
@extend .btn-primary;
}
1. 以上の2つのファイルを同じディレクトリに作成する
2. https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css からダウンロードして
bootstrap.min.cssというファイルで同ディレクトリに保存する
3. sassc をインストールしてコンパイルする
sassc style.scss style.css
4. ブラウザでindex.htmlを開く
そうすりゃ、divの下のbuttonにだけ、クラスも指定してないのに、スタイルが適用されるだろ
ちゃんと今俺が手元で実験して、そうなるのを確認したからな。
scssのレベルではできると証明した。Railsとの連携は別問題だ。それは自分でやれな >>846のform-controlも問題なく動いているが?
ホバーエフェクト? 周りの青いやつか?本家のサンプルもホバーエフェクトなんて無い
https://getbootstrap.com/docs/4.1/components/forms/ わー ありがとうございます
やさしい
でもなんかあたってるテーマがホバーエフェクトかけてるっぽいんですよね
input form にホバーすると枠がちょっとだけ濃くなる
最低限 form-control はかかないとだめっぽい おー そうなんですか
ありがと
ここで聞くと勉強する手間省けるから楽ちんですね つーか Rails で bootstrap を使うって simple_form みたいなヘルパー使うってことじゃないの?
いちいち view で bootstrap の HTML かくとか Rails 使ってる意味ねーじゃん >>860
とりあえずCSSとは何かを調べてから
出直してきてくださいねー scss 使うと部品わけられない糞じゃん
java の import みたいに名前空間かりるだけでコンパイルするときにリンク作るだけならともかく
CSSのimportってそこに import ファイルの中身吐き出すだけだからな
bnavbar.css
sidebar.css
mail_form.css
lp.css
みたいにわけて全部に @ bootstrap かくとか馬鹿すぎだろ SASS のimport は、パーシャルとか知っていないと出来ない
CSS としてimportするのか、SASSとしてimportするのか。
SASSとしてimportした場合、その中で、CSSをimportしていたら、どうなるのかとか
SASS のimport は、色々あるから難しい パーシャルって
_a.scss に @import bootstrap
_b.scss に @import bootstrap
ってかいて
default.css に
@import a
@import b
ってかいた場合どうなるの?
これで重複出力がないなら全部解決するんだけど >>862
> scss 使うと部品わけられない糞じゃん
何が言いたいのかわからん。
用語は適切に使ってくれ
部品分けるというのは、プログラム言語で言うと
クラスなどの単位で個別のファイルに分けること
分けて管理し、importやincludeで参照し、
ビルドで結合して一つのファイルを作る
scssでも個別のファイルに分けられるだろ?
そしてビルドで結合するだろ?
まずこれのどこが悪いのかを言ってくれ。 >>863
> SASS のimport は、パーシャルとか知っていないと出来ない
そのSASSっていうのは、sass文法の意味か?
ならscssを使え。
すべてのcssは適切なscssになっている。
それを知っていれば、以下のような疑問は起こりえないはずなんだが?
> CSS としてimportするのか、SASSとしてimportするのか。
> SASSとしてimportした場合、その中で、CSSをimportしていたら、どうなるのかとか
SASS(scss)のimportは、なにをimportしたとしてもscssとしてimportする
たとえ拡張子がcssであっても、中身がcssであっても、scssとしてimportする
それで問題は起きない。
なぜならcssで書いてあったとしても、それは正しいscssだからだ
> SASS のimport は、色々あるから難しい
お前が勉強不足でわかってないだけ >>864
> default.css に
default.scss な
> @import a
> @import b
> ってかいた場合どうなるの?
default.scss に
@import bootstrap
@import a
@import b
って書いて
_a.scss と _b.scss には @import bootstrap を書かなければいい
検証するまでもなく、解決済みだってわかるよな?w
っていうか本当にプログラマか?
検証もせずに重複読み込みで問題が発生するかもと想像できるぐらいなら、
(C/C++で有名な)インクルードガードで対応できることぐらいすぐに思いつくだろ >>867
import bootstrap ってかかないと
bootstrap のクラス名を extend できなくない? クラス名をextend
クラスをextend?
クラス名をcomplement? > default.scss に
> @import bootstrap
> @import a
> @import b
> って書いて
書いてあるが?
ってか試せよ。俺は試してないけどなー(笑)
次はなんてエラーが出てくる書けな。
書かないと何も答えない すまんけど、bootstrap使ってなおかつ独自にカスタマイズすることに何の苦労があるのかわからん
そもそもデザインごときにbootstrap使うまでもないとは思うけど、まあそれは置いといたとしても アンダースコアから始まるパーシャルファイル(scss)を読み込んでも、
CSS ファイルを生成しないって、本に書いてある
@import _a
@import _b
パーシャルファイルのアンダースコアは、省略しない方がわかりやすい
誰か試して、結果を教えてくれ じゃあbootstrap.scssに_つけておけば全部解決するのか >>872
だから自分でやれ。
scssとcssは区別する必要がない 結局 >>829 は Rails では不可能なの?
CSSはsass使えばいいとしても
role=とかdata-target=とかaria-control=とか毎回かくの大変だからサブルーチン化はしたいんだけど > role=とかdata-target=とかaria-control=とか毎回かくの大変だからサブルーチン化はしたいんだけど
今度はHTMLの話か。HTMLは下手に共通化しないことをおすすめする >>876
>ブロック複数わたせて複数回よべるようなサブルーチン化って Rails ではできないの? Procオブジェクトかラムダ式を複数渡すのならいけるかも 引数2個受け取るどころかメソッド2階よぶことすらできないんだけど
<%
def f
content_tag :div, '123'
end
def g
content_tag :div, '456'
end
def fg
f
g
end
%>
<%= fg %>
こんな view かいたら 456 しか出力されない
f ってなんで実行されないの? >>829
> 結局ながったらしいクラス側を変数にして
> @card_label_class=…
> @card_content_class=…
> <h2 class=“<%=@card_label_class%>”>…</h2>
> <p class=“<%=card_content_class%>”>
> でしのいでる…
>
> きれいに管理する方法ってないの?
だからscssで短いクラス名にするって話をしてるんだろ
<h2 class=“card-label>"…</h2>
<p class=“card-content”>…</p>
って書けばいいじゃん >>881
a = 123
a = 456
例えば、こう書いたら、456になる。
上書き じゃあどうすればいいの?
f + g だと1行になっちゃうし
<%= f %>
<%= g %>
だとインデントがずれるよね
呼び先のインデントを維持したまま複数行表示するには
パーシャルビュー使うしかないってこと? >>881
fは実行されてるけど、fgの返り値がgの実行結果になるので、結果として456しか表示されない。
<%= f %>
<%= g %>
これでもerbのインデントさえ揃ってれば、HTMLでもインデントは崩れないと思うけど?
あと毎回、2つのメソッドを続けて呼ぶのがダルいというのなら、パーシャルビュー作るのがいいんじゃないですかね。 パーシャル _test.html.erb の中で x, y って変数使うとして
render 'test', collection: [{x:1, y:2}, {x:3, y:4}]
ってわたしても x も y も undefined でおこられる
collection で引数わたしたいときどういうデータ構造でわたせばいいの? 一度マイグレーションスクリプトでAddColumnToUsersとか作ったら、
以後Usersにカラムを追加するときはこれを編集すれば良い?
それとももう一度AddColumnToUsersをgenerateしてどんどん新しく作っていくの?
どっちが普通? 既存のファイルを変更しても良いケースは
・ステージング環境や本番環境でまだそのマイグレーションを実行していない場合
・アプリのリリース前でいくらでもDBを初期化できる場合。ファイルが多くなってきたらむしろ積極的にテーブルごとにまとめたほうがいい
かな。
すでに他の環境でそのマイグレーションが実行された場合は新しく追加したほうがいい。マイグレーションをロールバックしたり再実行する必要が出てくる まず基本的に既存のマイグレーションを編集してカラム変更するという発想は捨ててくれ
多人数開発で既にコミットされたマイグレーションを上書きコミットするのは地雷行為なので絶対にしてはいけない
Railsは実行された一番最近のマイグレーションを記録してるので上書きされた過去のマイグレーションは他人の環境で実行されない
リリース前にまとめるなど特定のタイミングで意思疎通された場合以外は基本的にダメ それはマイグレーションを他の人に公開した場合だけどな
ローカルでやる分には書き換えてOK >>888-890
ありがとう
マイグレーション完全に理解した いまいちマイグレーションの存在意味がわからない
SQLなんて生で叩けばいいじゃん
列追加するのも生SQLでいけるし、すでにデータがあっても可能
気持ち悪いなら新たなテーブル作ってそっちにデータ移動して元テーブルは削除して新テーブルを元テーブルの名前に戻すだけ >>892
開発はチームでやることがほとんどなのでね
ぼっち開発なら生SQLでもいいのかもしれないけど >>892
個人個人でローカルにデータベースサーバー入れて開発してるってことを知らないんだろうな
というか、そんな高度なことができるのか?って思ってるはず。
データベースサーバーを使うのは難しいから専門家が設定してそれを
みんなで共用するのが常識だって思ってるんだろう いまいちSQLの存在意味がわからない
DBなんて使わずファイル一個置いておけば良いじゃん いまいちRailsの存在意味がわからない
MVCなんて使わず全部のアドレスにhtmlファイル置いておけば良いじゃん いまいち俺の存在意味がわからない
プログラミング言語なんて使わずAI一個置いておけば良いじゃん Rails で view かくときやっぱ全部ヘルパーでかくの?
<%= content_tag ... %>
それとも HTML 主体で要所に値いれるだけ?
<a href="<%= ...path %>...</a> >>898
構造的な部分はHTMLで書くかな
一行部分はヘルパー使うかな。<a... とかは link_to 使うね どっちかに統一するのかと思ったけど
混ぜて描くのが普通なんですね
ありがとうございました >897
あと10年もすれば実現するんじゃね。よかったな。 蔵も下請けも仕様書書けないのにどうやってAIが理解するんだよ? だから、客や AI と I/F する(できる能のある)やつだけが残るんだろ。ほんとにもうすぐだよ。 Rails で新し目の JS の記述したら develop staging は何ともなかったのに
production だけプレコンパイルでエラーはいたんだけど…
Rails で JS 使うといまだに class とか使えないの? >>904
エラーの内容をはってくれないと俺たちはエスパーじゃないんだし 調べたらすぐでてきたわ
uglifierがES6構文に対応してないのな
解決策もすぐでてくるけどproduction.rb 書き換えるんじゃダメなんか
まあ確かにこれぐらいデフォで対応しとけとは思うが Rails はじめてつかうんだけど
view と route (URL) って自分でかくものじゃなくて
モデルとコントローラーだけを自分でかけば
コマンドで勝手にできるものなの? 同じく初心者なんですけどviewのエラーがぜんぜん解読できない
他の言語だったら少なくともエラーメッセージで何がおこってるかぐらいはわかるのに…
慣れればわかるようになるのでしょうか Railsは選ばれたものにしか扱えない神のツールだからな そのエラーメッセージで検索すれば?
すべての行に、tap, p 文を付けて、インスタンスを確認するとか
本当に正しい、HTML を作っているのか?
ERB 変換後のHTMLを、ツールに通して、正しい形式かどうか、チェックするとか たしかにRails、というかrubyのエラーはかなり不親切 「Ruby は国内でしか使われていない」
デマ流してるのは Matz 本人だと思った Railsの既存システムを少しさわったことがある程度で
新規にRailsで作ることになってRails g をはじめて使うんですけど
何をどこまで手動でかいてどこまでが自動生成するのが普通なんですか
モデルのバリデーション
マイグレーションのデータ型
viewのフォーム要素
って自動で生成してくれたりするんでしょうか
boolean だったら checkbox
Datetime だったら timepicker
みたいな 選べる立場ならRailsなんて絶対使いたくないけど
上の人がRailsを使いたがるのでどうしようもないんです もうRailsまじ無理
エラーメッセージ不親切だし
ドキュメントないし
記事少ないし
質スレもぜんぜん回答くれないし
たかが少しソースが短くかけるってだけで
デメリットがあまりに大きすぎる そうやね
SQL書かなくて良いとかもうそっぱち
ORMが一時期流行ったけど手間が増えただけ Railsでオブジェクト志向ってどうやるん?
rubyでオブジェクト志向はわかるけどさ
viewってできるの移譲ぐらいでオーバーライドやらファクトリやらできないよね? >>922
Railsに限らずオブジェクト指向というのは
フレームワーク(及びそのプラグイン)を作るために使うもの
フレームワークを導入すると、単純なコードを
埋めていくだけでアプリが作れる。作れるようになってる。
その結果オブジェクト指向を直接使わなくてすむ
だけどオブジェクト指向はフレームワークにとっては必須 いや意味分からん
名前と値段だけの商品モデルとデータベースがあって
それに在庫って要素追加するときどうすんの
それまでのモデル全部書き直すの? 在庫追加すりゃいいだけだろ。
それとモデルに何の関係があるんだ?
そもそもお前、名前と値段だけというなら
その商品モデルには何もコード書いてないだろ 無料のRails チュートリアルをやればよい
それが難しすぎるなら、この本
改訂4版 基礎 Ruby on Rails、黒田努・佐藤和人、2018/9/7 Railsはむしろ差分プログラミングしてこそ意味がある 今Railsで作ったアプリがHerokuで動いてる
新しくDBにカラムを追加したとき、いつも通りpushしてしまって大丈夫?本番データ飛ばないよね?
もしダメな場合は良い方法を教えてくれ 在庫は商品テーブルとは別に在庫テーブルを作りそうだけどなー ヘロク使ってるならアプリもう一つ作って試せばいいじゃん alterでカラム追加するんでしょ、大丈夫
心配なら自分で試さないと理解できないよ > 本番データ飛ばないよね?
と思っている場合、たいてい吹っ飛ぶw 表の構成を変えるのに、テストしないのか?w
普通は、何日も掛けてテストして、運用も止めて、表もデータも再構成する。
全部データもバックアップして、migrate の失敗に備える おニューのサイトならいいんだけど
既存のサイトを変更しようとするとしんどい railsってラピッドプロトタイピングが持ち味だよね?
railsをAPIモードで動かして、フロントをJavaScriptフレームワークにする構成だと開発速度落ちない?
erbでhtml書いたほうが早い気がするんだけど Railsを選択したら全てのフロント用フレームワークは捨てなければならない YouTube の伊藤淳一の動画に、Rails から、Vue.js を使うのがある
>>735-736
を参照 >>937
落ちないよ
それで落ちるようならJavaScriptフレームワークを使ったら開発速度が落ちると
言ってるようなもんだし、事実はそうじゃないしね Rails でモデルの検索フォーム作るときって
データベースなしの検索フォーム用のモデルに set_attr して form_for 使うのと
モデルなしで form_tag 使うのどっちがきれい? >>942
HTML VS JavaScriptフレームワーク
であれば、後者のほうが開発速度落ちるのでは? Rubyが今大人気!!
世界最大のソフトウェア開発プラットフォームで最も人気なプログラミング言語は何なのか?
https://gigazine.net/news/20181116-top-programming-languages-2018/
さすがRuby!貫禄のランクイン!!
Railsで作られたサービスでの集計ということを差し引いてもすごい! 「一般的に新しいプログラムはJavaScriptやJava、Pythonで書かれる可能性が高い一方で
Rubyで書かれる可能性が低いとみられ、今後も主要なプログラミング言語間の格差は開いていくのではないかとGitHubは考えています」
やっぱ凋落傾向やねー
良い言語だと思うんだけど、他の言語がRubyのいいと思える場所をガンガン取り入れたし、
もうアドバンテージがなくなってるのかねぇ? >>946
> GitHubは考えています
オメーは何言語から生まれてきたサービスなんだ?ああ〜ん?生みの親ディスってんじゃねーぞコラァ!? GitHub「使える道具は使うし、使えなくなったら捨てるまで」 Rails は書くのは楽なんだけどなー
人のコード読むのがまじできつい > 一般的に新しいプログラムはJavaScriptやJava、Pythonで書かれる可能性が高い一方で
JS は分かるとして、Java?Java ねぇ…そうなのかな…という印象 もともと、Javaの冗長さがバカバカしくてRubyに移ってやったわ! みたいなのあったやん
でも今はJavaも相当に良くなってるからなー
ttps://qiita.com/dossari-book-archive/items/ad4f7bcaaebca6281154
自分はこの人の意見にかなり同意。細かい文法から環境まで良くなってる。
Kotlin使う必要あるか?ってくらい。 有償化もそうだけど、最近ではOracleよりはMicrosoftの方がよっぽどOSSの業界では信用できるイメージ
時代が変わったといえばそれまでだけど、まさかMicrosoftがこういうイメージになるとはね… OSSのほうはいいんだけどwin10のアプデ通知嫌がらせとかはやめてくれや C#はほとんど完璧な言語と言っていい状態になってるな
TypeScriptも素晴らしい
そしてVSCもAtomよりずっと良い
予言するが「GitHubをC#で実装し直しました!」というニュースが駆け巡る日が来るぞ…
Cookpadは知らん! まったくコードいじってないのに、突然、postでパラメーターが
送られなくなるなんてことあるのか?
厳密にいうとaccepts_nested_attributes_forを使ったフォームで、子モデルのみ
のデータが抜け落ちるのだが、、。 >>956
Githubにパブリッシュでプッシュしてみて 初心者なんですけど
route.rb にかく PUT とか DELETE って Rails 固有ののものなんです?
GETとPOSTはよくきくんですが
ここって別に任意の文字にして
link_to のメソッド名と一致させればコントローラーにとんできますか? 他のフレームワークでも、よく見るから、REST か何かの仕様じゃないの? >>961
>>960 の通り、http 勉強しようよ… ActiveRecord って Rails の機能?
ActiveRecord のメソッドと
arealっていうの使うのと
executeでSQL直接かくのと
最初に勉強するならどれがいいんですか? >>963
Rails に含まれる O/R マッパーと呼ばれるものが ActiveRecord
SQL 自体書けないのなら SQL の勉強が先
SQL 書けるのであれば ActiveRecord
Arel はよっぽどのときじゃないと使わないので最初は覚えておかなくてもいい Rails使うとn+1問題が発生するクソ仕様
ベテランでも自分で組んでいて気づかない
生sqlで組み立てればそんなものそもそも発生しないのにActiveRecordなどに頼るからそうなるんだよ >>965
n+1なんて機械的に検出できるのに、それができないというのは本当にベテランなのかい? >>966
開発環境で問題なくて本番の大量データ使ったときに発覚することがけっこうある >>967
いやいや、機械的に検出なんだから、大量も少量もないよ >>968
まあいいや
気付かなかった開発者がアホなだけね >>964
ありがとうございます
index とか show の view で .all や find でとってくるぐらいはできるんですけど
検索とかで複数テーブルが絡むとちょっと怪しい
アソシエーションだけで小テーブルもってくるだけならいいけど
小テーブルで検索とかになるともうどうかいていいかわからないレベルです N+1問題ってなに?
要はrelationの状態を保ってればいいんんだと思ってたんだけどそういうわけではないの? まじか
relationの状態保ってればSQLは1回しか発行されないと思ってたわ
要はfindとか単一要素抽出と
mapやeach呼んだ瞬間SQL発行されるから途中で使わなけりゃいいんだと思ってた
じゃあどうやって機械的に検出するの? >生sqlで組み立てれば
ユーザーから取得した文字列で、SQL 文を構築すると、
SQL インジェクションされるから損害賠償請求される
プロが絶対にやってはいけない事だから
クラッカーは「SQL文; SQL文」みたいに、うまくエラーが起きないように、; で続けてくるから、
絶対にplace holder を使わないといけない
それでチェックできる >>974
place holderってテーブル名に使えないじゃん
O/Rマッパーって名SQLを組み立ててるんやで assets/stylesheets 直下がファイル増えすぎてきたから
ディレクトリ作って移動したらなぜか読み込めない
assets/stylesheets/test ってディレクトリ作って
require 'test/xxx' とか require_tree 'test' ってかけば動くんじゃないの?
直下以外におけない仕様なの? それでいけるはずだが読み込めないって具体的にどうなるんだ?
サブディレクトリにおいたCSSをstylesheet_link_tag とかで読み込むには precompile に追加しないとダメだが
application.css から require する分には 'ディレクトリ名/prefix' でいけるはず 読み込むファイルからの、相対パスで指定する、require_relative もある
require "./abc"
require_relative "../xyz"
相対パスなら、. か、.. で始まる
それらで始まらない、
require "selenium-webdriver"
みたいなものは、LOADPATH の順番に探索して、
先に見つかったものが読み込まれるのだったかな? precompileに追加してない落ちだろどうせ
誰もが通る道 rails3.4をやってたんだけど
今ってもう5なんだよね
今からでも追いつける?
turbo linkとか、だいぶ変わってるようだけど Railsは年々使われなくなってきてるからこの際他に移ったほうがいい 新規開発でのRails案件はマジで減ったなー
あっても管理者向け画面だけでフロントは皆無
かつ、使ってるトコもいつどれに移行しようか検討してるとこばかり 世界中で使われなくなってるからライブラリもメンテされなくなっていく
何よりいつまでもRailsにしがみついていると昭和オヤジみたいな扱いされるようになる そう思うんならこんなスレ覗かなきゃいいのにね
こういう分かりやすいアンチが湧いて出るところを見るとまだまだ現役だな、と思うわw 要らないと思ってる人間がわざわざそんなスレを覗いてる不思議 そもそもrubyじゃないといけない理由なんかないだろ そう思ってる人間がわざわざRailsスレを覗いてる不思議 粘着荒らしがいるってことは、人気があることの裏返し パトロールってなんだよw
自分は荒らしですって言ってるようなもんじゃんww >>993
お前みたいなバカが一番邪魔なんだよ
人気のなさはピカイチじゃねえか
統計くらいみとけボケ >>984
おすすめは何ですか?
Node.js? django? >>984
おすすめは何ですか?
Node.js? django? Railsの時代は終わりつつあるが、Railsの次も混沌としている このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 818日 6時間 55分 52秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。