この土日相当に悩んだぞ

この土日は、久しぶりにプログラミング・モードに入りました 日本循環器学会で配布されていたプログラム閲覧用Appに触発されたのです

昨年の鎌倉ライブHomePageは PHP/JavaScript/jQuery/CSS/html/MySQLを組み合わせて何とか付け焼き刃で作りました

それなりに使えるものであり、未だ HomePageは残してあります

しかし、これは本当に付け焼き刃なので、もう少しきちんとしたものを作りたい、そのためには Laravelを勉強しよう!!と思ったのですが、既に挫折しました とにかく PHP以外に学んだり、覚えたり、あるいは流儀に馴染んだり、そのようなことが多すぎます もう僕の脳みそは新たなものを取り入れる余地があまりありませんので、これは辛いのです

そこで、考え方を方向転換しました 「折角使えるようになっているPHP/JavaScript/jQuery/CSS/html/MySQLなのだから、そのまま推し進めよう」と思ったのです そして「余力が出れば Laravelなりを学べば良い」と思ったのです

それで、昨年のプログラムを見直しました こんな風体にしたかったのです

デモスクリーン

もちろん、下の大きなアイコンは navigatorであり、このアイコン集はどのページにも出現し、スクロールしても消えません このようなものを作りたいのです

これには、Bootstrapの navibar/dropdownコンポーネントを用いればそんなに難しくなくできる、ということは自分で分かっていました そして実装したのですが、どうしても

こんな風にDropdownしたいんだ!!!!

こんな風に(dropdownする)動かないのです いや、動いたり動かなかったり、と厄介なバグです

そしてついに原因をつかみました jQuery Libraryが version3.xであると動かないのですが、1.xや 2.xであれば動作したのです これには驚きました ちなみに 3.xでも動いていた時には次のようなコードを書いていたからです

<script src="http://code.jquery.com/jquery.js"></script>
<script>
	if ( !window.jQuery ) {
		document.write( '<script src="js/jquery3-1-0.js"><\/script>' );
	}
</script>

つまりこれであれば、on-lineであれば、CDNを読みにいっていますが、この読んだ先には、jQuery 1.xがあったからなのです

うーん時間潰しました

昨日は神奈川保険医協会での講演でした

昨日は外来診療後、細々とした仕事をしてから一旦自宅に自転車で帰宅し、着替えてからバスと電車で横浜駅近くに移動しました

実は神奈川保険医協会の会議室が横浜駅近くのビルの中にあり、そこで講演を依頼され、19:30より行ったのです

今回のテーマは BRS (Bio Resorbable Scaffoldings)についてのものでした 実は前回の 1998年当時の神奈川保険医協会での講演では 200名以上の空前の参加者がありましたが、今回は 20名程度でした

なかなか開業医の先生方もご参加が困難になってきているものと思われます それでも講演の後は、非常に活発な討議と質問があり、「これはすごい」と感じました 本当に昨日は講演に参加することができて良かったです

それにしても、大船駅から横浜駅まで行き帰りの電車 行きは 18:30頃の横須賀線、帰りは 21:00頃の東海道線だったのですが、その時刻でもすし詰めの満席で驚きました もちろん一般席で移動したのですが、「これは東京まで通勤されている方々は大変だなあ」と本当に思いました そして、もう一つは 100名が 100名皆スマホをやっているのです

うーん、やはり時代はスマホですねえ スマホで閲覧できないコンテンツは作成しても駄目でしょう 今後の Home Page作成にこの経験を活かします

うーん 何だか難しいなあ

Dynamic DNSというものの存在を教えて頂きました しかし、何だか難しいなあ 実際にいじくって自分でやらないと理解できないような気がします

それよりも今直面しているのは これが理解できないのです うーん何と説明すれば

まず、Laravelを /Sites/myapp/にインストールしました

そして、/myapp/に移動し、$php artisan serve でサーバーを立ち上げました

そして、/Sites/myapp/routes/web.php の中に /helo でroutingを行う命令を書きました

そうすると アドレスバーで localhost:8000/helo とすれば、そのページが出力されます

ところが、ここで artisanを停止し、XAMPPで apacheを立ち上げます 僕のapacheの document rootは /Sites/にしてありますので アドレスバーで localhost:8000/myapp/helo とすれば同じ出力されると思ったのですが サーバーが反応しません

うーん 分からない apacheのポートは何番なのでしょうか?

分からない分からない分からない

Laravel 5.3の download

さて、昨日 Laravel5.3を downloadしようしたらば最新版の5.4が downloadできてしまい、5.3をdownloadできなかった話をしました

しかし、これは当たり前でしたね だって、

$ composer create-project laravel/laravel=dev-develop laravel53

などと打ち込み、5.3をdownloadした気分になっていたからです composerのコマンド体系を見れば、これでは laravel最新版を downloadすることになりますよね いやきっと そのように予想できます

従って、Laravelの開発ページを見に行く必要があります そこで、githubを探すと ここにありましたね

さて、このページの左上の方を見ればこのようになっています

Github

ここでこのselect buttonをいじくると 出てきました 5.3が

Laravel5.3の選択

これで5.3を選択し、downloadなりすれば良さそうです とは言うものの、もうすぐ朝カンファランス そして 怒涛の外来診療ですのでとりあえずここまでにしておきましょう

 

どうもおかしい

OSX-Sierraになってからか、あるいは MacBook Pro Late 2016になってからか、どうも Macの挙動が時々おかしいのです 昨日も、Mailが hung upしてしまい、強制終了もできず、仕方なく Terminalで

$sudo shutdown -r now

をしてマシンを再起動しました 再起動されるまでにも一分間以上かかり、何時もは電源ボタン押してしまうのですが、昨日はどうなるのかじっと待っていたところ、やがて電源が切れ、再起動しました

そして Mailを立ち上げると、何と 受信トレイの中身がごっそり消失しているのです!!! どこにも痕跡すらありません まあ何時までも受信したメールをとっておくのも何ですから それはそれで諦めもつくのですが、それにしてもこのような基幹的ソフトで消失するようなことがおこる、というのは Macさん 大丈夫?

Laravel 何だかややこしいな

Laravelの最新version = 5.4です しかし、Web上の情報はほとんどが良くて 5.3 大多数の日本語サイトは 4.3です 要するにものすごいスピードで version upされているようなのです

それはそれで嬉しいことですが、問題は言語仕様がどんどん変化しており、英語の on-line manualを読まねば最新の仕様がわからないという点です これは辛いです 仮に日本語だとしても理解は困難な上に、それが英語であればどんな事態になるか想像できますよね

という訳で Kindleで書籍を探しました 日本語書籍は最新のものでも Version 5.1です 英語のものでようやく 5.3です そして、5.1から 5.3に version upした時点で Laravelの dirctory構造が大きく変更されたようなのです 具体的に僕が気づいたのは Routingの directoryが大きく変更になり、この時点で日本語サイトや日本語書籍はあまり参考にならなくなってしまいました

それでは、敢えて down gradeして、Version5.3をインストールすれば良いとも思いますよね それでサイトを探し、このサイトに巡り会いました そして、ここに書いてあるように

$ composer create-project laravel/laravel=dev-develop laravel53 --prefer-dist

と打ち込みましたところ、見事にエラーで撃沈 そこで今度は最後の –prefer-distをとって打ち込みました

$ composer create-project laravel/laravel=dev-develop laravel53

そうするとLaravelのインストールが始まりました しかし、ここで

$ php artisan -V

と打ち込むと、そんなコマンド無い、とエラーが出たので、

$cd laravel53

としてから、

$ php artisan -V

と打ったところ、今度は反応しました しかし、しかし、しかし、その答えは

$ php artisan -V
Laravel Framework 5.4.15

という悲劇的なものでした これを受けて laravel53/ directoryを完全に削除するしかありませんでした 要するに、指定の laravel versionをうまいこと導入する手段は無いのでしょうか

Laravel すぐに躓き

さて、このページにあるように routingを試してみました ところが、ここに書いてあるファイルがそもそも存在しないのです このページではどうやら Laravel 4.xでの説明のようですが、僕がインストールしたものはどうやら Laravel 5.4という最新 versionなのです

結局、Laravel 5.4に web manualを参照すると、どうやら routes/ folderの中の  web.phpに書くことで routingがされそうです このファイルは最初はこのようになっています

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});

この最後に以下をつけたしてみました

Route::get('/helo', function () {
    return '<h1>Hello Worl</h1>
this is sample page.'; });

そうして、 localhost:8000/heloにアクセスしたところ、やったね、

やったね

出ました

おおおおお

指示にある通り 開発用 local serverを立ち上げました 実は、何時も XAMPPで立ち上げているので最初うまくいかず、XAMPPの Apacheを停止してからやったところうまく行きました Browserの address barに下記を打ち込みました

http://127.0.0.1:8000

これは要するに local server IP address = 127.0.0.1の port=8000にアクセスしろ、という命令ですね そうすると下記の画面が表示されましたよっ

Laravel開発画面

うわあ なんかかっこいい 僕みたいなミーハーはこれだけでもう心キュンです

おお すごい

そのまま指示に従ってやってみました

$cd myapp
$ php artisan serve

そうすると 見事開発用サーバーが立ち上がりました

Laravel development server started: <http://127.0.0.1:8000>

問題は、この後も僕の根気が続くかですね まず 99%は途中で投げ出し、その内忘れてしまいまから

これは期待持てるかも

早速、「Laravel入門」というサイトを開いて勉強開始です まずは、プロジェクト・フォルダの作成です このサイトに書いて有るように composerコマンドを入力しました

composer create-project laravel/laravel myapp --prefer-dist

そうすると、すぐに反応し downloadが始まりました こんな具合です

Installing laravel/laravel (v5.4.15)
  - Installing laravel/laravel (v5.4.15): Downloading (100%)         
Created project in myapp
> php -r "file_exists('.env') || copy('.env.example', '.env');"
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 59 installs, 0 updates, 0 removals
  - Installing symfony/polyfill-mbstring (v1.3.0): Downloading (100%)         
  - Installing symfony/var-dumper (v3.2.6): Downloading (100%)         
  - Installing jakub-onderka/php-console-color (0.1): Downloading (100%)         
  - Installing jakub-onderka/php-console-highlighter (v0.3.2): Downloading (100%)         
  - Installing dnoegel/php-xdg-base-dir (0.1): Downloading (100%)         
  - Installing nikic/php-parser (v3.0.5): Downloading (100%)         
  - Installing psr/log (1.0.2): Downloading (100%)         
  - Installing symfony/debug (v3.2.6): Downloading (100%)         
  - Installing symfony/console (v3.2.6): Downloading (100%)         
  - Installing psy/psysh (v0.8.2): Downloading (100%)         
  - Installing vlucas/phpdotenv (v2.4.0): Downloading (100%)         
  - Installing symfony/css-selector (v3.2.6): Downloading (100%)         
  - Installing tijsverkoyen/css-to-inline-styles (2.2.0): Downloading (100%)         
  - Installing symfony/routing (v3.2.6): Downloading (100%)         
  - Installing symfony/process (v3.2.6): Downloading (100%)         
  - Installing symfony/http-foundation (v3.2.6): Downloading (100%)         
  - Installing symfony/event-dispatcher (v3.2.6): Downloading (100%)         
  - Installing symfony/http-kernel (v3.2.6): Downloading (100%)         
  - Installing symfony/finder (v3.2.6): Downloading (100%)         
  - Installing swiftmailer/swiftmailer (v5.4.6): Downloading (100%) 

何だか期待持てますねえ