こなさんち

しがないフリーランスエンジニアの備忘録。

カスタム関数追加してみたよ@Laravel5

お疲れ様です。

FuelやCakeとは異なって、既存でのHTMLヘルパーがないLaravel5では、 laravelcollective を使用しますね。 ただ、それを使用しても cssやjsのタグは自分でタグを書かなければなりません。 ※もしあったら教えてください

ということで、自分で作りました。

1. /custome_helplers/form_builder.php

ファイル名は適当で良いです。

<?php

if(!function_exists('asset_css')) {
  /**
   * Create link tag element for css
   * 
   * @param   string  $file_name
   * @param   bool    $secure = false
   * @return  string  link_tag
   */
  function asset_css($file_name, $secure = false)
  {
    if (is_array($file_name)) {
      
      $tag = '';
      for ($i = 0; $i < count($file_name); $i++) {
        $relative_file_path = '/assets/css/' . $file_name[$i] . '.css';
        $tag .= make_tag($secure, 'link', $relative_file_path, ['rel' => 'stylesheet']) . '\n';
      }
      
    } else {
      
      $relative_file_path = '/assets/css/' . $file_name . '.css';
      $tag = make_tag($secure, 'link', $relative_file_path, ['rel' => 'stylesheet']);
    }
    return $tag;
  }
}

if(!function_exists('asset_js')) {
  /**
   * Create link tag element for javascript
   * 
   * @param   string  $file_name
   * @param   bool    $secure = false
   * @return  string  script_tag
   */
  function asset_js($file_name, $secure = false)
  {
    if (is_array($file_name)) {
      $tag = '';
      for ($i = 0; $i < count($file_name); $i++) {
        $relative_file_path = '/assets/js/' . $file_name[$i] . '.js';
        $tag .= make_tag($secure, 'script', $relative_file_path, ['type' => 'text/javascript']) . '\n';
      }
      
    } else {
      $relative_file_path = '/assets/js/' . $file_name . '.js';
      $tag = make_tag($secure, 'script', $relative_file_path, ['type' => 'text/javascript']);
    }
    
    return $tag;
       
  }
}


if(!function_exists('make_tag')) {
  /**
   * Create link tag
   * 
   * @param   string  $tag_header
   * @param   string  $relative_file_path
   * @param   string  $attr = ''(array)
   * @return  string  script_tag
   */
  function make_tag($secure, $tag_header, $relative_file_path, $attr = '')
  {
    $file_full_name = asset($relative_file_path, $secure);
    $abs_file_path = public_path($relative_file_path);
    $timestamp = filemtime($abs_file_path);
    
    $tag_attr = ' ';
    if(is_array($attr)){
      foreach ($attr as $key => $value) {
        $tag_attr .= $key . '="' . $value . '" ';
      }
    } else {
      $tag_attr .= $attr;
    }
    
    switch ($tag_header) {
      case 'link':
        $tag_file_name = ' href="' . $relative_file_path . '" ';
        $tag_end = '';
        break;
      
      case 'script':
        $tag_file_name = ' src="' . $relative_file_path . '?' . $timestamp . '" ';
        $tag_end = '</' . $tag_header . '>';
        break;
        
      default:
        $tag_file_name = '';
        $tag_end = '';
        break;
    }
    
    $tag_begin = '<' . $tag_header . $tag_file_name . trim($tag_attr) . '>';
    
    $tag = $tag_begin . $tag_end;
    
    return $tag;
  }
}

2. public/index.php

追記するよ

require __DIR__.'/../custome_helplers/form_builder.php';

こんな感じで使うよ

 <head>
   <meta charset="utf-8">
   <title>@yield('title')</title>
   <link rel="stylesheet" href="/assets/css/style.css">
   {!! asset_css('style') !!}
   {!! asset_js('vue.min') !!}
 </head>

開発時のインデントはどうしてますか?

お疲れ様です。

みなさんは開発時のタブインデントってどうしてますか??

私はタブは使わずにスペース2を愛用しているのですが、 4も目立つので調べてみました。

ics.media

どうやら、Javascript界隈ではスペース2が多いようです。

2を引き続き愛用していきます。

materialize-cssとvueをインストールしてみたよ@備忘録

皆さん本日もお疲れ様です。

私は基幹エンジニアで、Webに関してはサーバーサイドの知識しかありませんでした。 フロントサイドに関しては、javascript,jQueryしか知らない。 ただ、最近のフロントサイドはReact.js,Vue.js等々、Frameworkがごろごろとあるんですよね。

でも、触ったことがない。 ここで既に時代遅れです。 いいんです、時代遅れでも。私がのんびりやってれば。

ということで、改めてDotinstallで全部勉強してきました。

新しい趣味システムにもどんどん組み込みます。

一番シンプルに安定版のvueを突っ込みましょう。

$ npm install vue

続いてcssのFramework

私はBootstarpしか触ったことありません。 今やNASAのホームページにさえ使われているBootstrap。 色んな所で見受けられますね。

ひねくれ者の私は

敢えて使いません。 敢えて。

今回私が気に入ったのが materialize-css です。

使い方はまたおいおい。

はいこれも突っ込みます。

$ npm install materialize-css

npmも初心者なので(涙目)

npmで落としたものは、現在位置に node_modules/vue node_modules/materialize-css と設置されます。

それぞれ、ディレクトリ内の /dist/ 内にある必要なファイルを移動させましょ。

※dist って distribution(配布物)って意味なんだって。勉強になったね。

$ cp -r node_modules/vue/dist/. public/assets

ぽいっと。

以上。

githubへのアクセス制限

こんばんは 。

今夜はね fuel で composer update したときに

Could not fetch https://api.github.com/repos/fuel/docs, please create a GitHub OAuth token to go over the API rate limit

って聞かれてなんじゃそらと思ったので調べましたぞ。

hamamuratakuo.blog61.fc2.com

ありがとうございました。

今年やりたいこと

お疲れ様です。

今の段階で決めてること、書き残さないと多分忘れるので書いていきます。

小さなことから大きなことまで。

資格に関しては技術擁護満載なので分からん人は分からんで良いです。取り敢えず備忘録として。


■資格
2月 AmazonでAPの書籍を買う
→APに関しては4月に受かろうとしないこと。10月に向けて。

本当は1月に買ってもいいけれど、1月は、出費が大きくなってしまった。
開発中のサービスのサーバはConohaVPSで落ち着いてきていたのだが、諸事情により利用規約に少し抵触してしまうことが判明。
よって、別のクラウドVPSと契約しました。私のやりたいことができる、とはいえ、初期費用が4,000円かかってしまうので、少し出費。

他、AWSの知識不足で数千円取られたりしたので。これ以上の出費は抑えたいところ。


■進学
かねてからの願望だった大卒資格を取得すべく、ちゃんと考えます。
通信かなあ。

■運動
2月または3月から、ジムに行きます。ちゃんと痩せないと。
今まで来ていたMサイズの服が厳しくなってきてしまった。

■人間関係
厄年なのでいい出会いとかは無いと思うけれど、ちゃんと話せるように、気楽にいきたい、かな。
具体案はないけれど。

■開発
今開発中のサービスと、設計中のサービス、どちらかは運営開始できたら良い。
それを副業として、ゆくゆくは収入源にできたらと。

■CAS?ラジオ?
これもやりたいこと。
少しでも、人の役に立てればいいかな。

■まとめ
慌てないこと。
取り敢えず、慌てない。

全部できなくてもいい。自分が決めたことできなくてもいい。少しでも、進めればいい。