Skip to content

Commit

Permalink
Merge pull request #187 from yKazihara/add_tutorial_doc
Browse files Browse the repository at this point in the history
ER図や結合試験書へのリンク、初学者用学習ステップなどを追加
  • Loading branch information
chihiro-adachi authored Apr 22, 2021
2 parents 56c6cb7 + 5de9bef commit 645b065
Show file tree
Hide file tree
Showing 10 changed files with 184 additions and 10 deletions.
23 changes: 20 additions & 3 deletions _data/navigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,14 @@ docs:
- title: ログの取得
url: /co/co_log
output: web, pdf

- title: 初学者向け情報
output: web, pdf
children:
- title: 学習のステップ
url: /learning/learning_step
output: web, pdf

- title: インストール方法
output: web, pdf
children:
Expand All @@ -59,6 +67,7 @@ docs:
- title: コマンドラインインターフェイス
url: /quickstart_cli
output: web, pdf

- title: バージョンアップ
output: web, pdf
children:
Expand All @@ -74,6 +83,7 @@ docs:
- title: EC-CUBE4.0から4.1へのマイグレーション
url: /update-40-41
output: web, pdf

- title: 機能仕様
output: web, pdf
children:
Expand All @@ -86,6 +96,7 @@ docs:
- title: 税率設定
url: /spec_tax
output: web, pdf

- title: 本体カスタマイズ
output: web, pdf
children:
Expand Down Expand Up @@ -201,12 +212,14 @@ docs:
- title: セッション保存方法
url: /session_handler_settings
output: web, pdf

- title: 開発ツール
output: web, pdf
children:
- title: MailCatcher
url: /development-tools/mail-catcher
output: web, pdf

- title: "セキュリティテストの実施"
output: web, pdf
children:
Expand Down Expand Up @@ -235,12 +248,16 @@ docs:
url: /penetration-testing/improvement
output: web, pdf

- title: カスタマイズサンプル(逆引き)
- title: 逆引きリファレンス
output: web,pdf
children:
- title: 商品詳細画面にYoutube動画を登録する
url: /sample-code/add-youtube-to-product-detail
- title: Tips
url: /reverse-lookup/tips
output: web, pdf
- title: カスタマイズサンプル集
url: /reverse-lookup/sample-code
output: web, pdf

- title: 開発に参加する
output: web, pdf
children:
Expand Down
22 changes: 22 additions & 0 deletions _pages/learning/learning_step.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title: 学習のステップ
keywords: 初学者向け 学習のステップ
tags: [learning]
permalink: learning/learning_step
folder: learning
---


---

※ 想定レベル:多言語・他フレームワーク経験者
※ 学習期間:イーシーキューブ社内実績では、2週間程度(一日数時間)で本体開発に参加

- Symfonyの基礎
- [PHPフレームワーク Symfony 4入門](https://www.shuwasystem.co.jp/book/9784798056692.html){:target="_blank"}
- [EC-CUBE研修資料(Symfony入門ハンズオン)](https://qiita.com/chihiro-adachi/items/ccb00206c7288c1804b0){:target="_blank"}
- EC-CUBEの基礎
- [EC-CUBE 4 システム構築入門&店舗運営・管理ビギナーズガイド](https://www.amazon.co.jp/dp/4899774885){:target="_blank"}
- プラグイン開発
- [プラグイン仕様](/plugin_spec)
- [決済プラグインサンプル](https://github.com/EC-CUBE/sample-payment-plugin){:target="_blank"}
19 changes: 14 additions & 5 deletions _pages/plugin/sample.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,30 @@
---
title: サンプルプラグイン
title: プラグインサンプル
keywords: plugin sample プラグイン サンプル
tags: [quickstart, getting_started]
permalink: plugin_sample

---

### 商品レビュープラグイン(ProductReview)
## 商品レビュープラグイン(ProductReview)

商品レビューを投稿・表示するプラグインです。

#### カスタマイズ概要
### カスタマイズ概要

- フロントページへの表示の追加
- 入力フォームのあるページの追加
- データベースへのテーブルの追加と保存

#### ダウンロード・詳細
### ダウンロード・詳細

https://github.com/EC-CUBE/ProductReview-plugin/tree/4.0
- [商品レビュープラグイン](https://github.com/EC-CUBE/ProductReview-plugin/){:target="_blank"}

## 決済プラグインサンプル

決済プラグインサンプルです。
リンク型クレジットカード決済とトークン型クレジットカード決済およびコンビニ決済の3種類の決済方法を追加できます。

### ダウンロード・詳細

- [決済プラグインサンプル](https://github.com/EC-CUBE/sample-payment-plugin){:target="_blank"}
4 changes: 4 additions & 0 deletions _pages/plugin/spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,3 +152,7 @@ $ tar --exclude ".git" --exclude ".DS_Store" -cvzf ../[PluginDir].tar.gz *
- https://github.com/EC-CUBE/ec-cube/issues/2440
- ファイル設置のみのプラグインはロードされない
- dtb_pluginにレコードが登録されている必要があります。

## プラグインサンプル

- [決済プラグインサンプル](https://github.com/EC-CUBE/sample-payment-plugin){:target="_blank"}
12 changes: 12 additions & 0 deletions _pages/reverse-lookup/sample-code.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
title: カスタマイズサンプル集
keywords: customize sample
tags: [customize, sample]
permalink: reverse-lookup/sample-code
folder: reverse-lookup
---


---

- [商品詳細画面へのYouTube動画の追加](/reverse-lookup/sample-code/add-youtube-to-product-detail)
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: 商品詳細画面へのYouTube動画の追加
keywords: core カスタマイズ Entity Product
tags: [core, entity, product]
permalink: sample-code/add-youtube-to-product-detail
permalink: reverse-lookup/sample-code/add-youtube-to-product-detail
folder: sample-code
---

Expand Down
95 changes: 95 additions & 0 deletions _pages/reverse-lookup/tips.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
---
title: Tips
keywords: Tips tips つまづいた 困った
tags: [tips]
permalink: reverse-lookup/tips
folder: reverse-lookup
---


---

ここではちょっと開発につまづいた時に役に立ちそうなTipsを挙げていきます。

## 開発の小技

### デバッグしながら開発したい

デバッグモードを有効化すると便利です。

[デバッグモード](/debug_mode)

### オブジェクトの中身を確認しながら開発したい

デバッグモードを有効にしソースにdump関数を埋め込むと、Symfonyツールバーから確認ができ便利です。

```
// ソースへの埋め込み
dump([中身を確認したいオブジェクトのインスタンス]);
```

![デバッグモードでdump](/images/reverse-lookup/dump.png)

### 画面が真っ白になってしまって困った!

本体、サーバーなど様々な要因が考えられますが、まずは本体のログを確認してみると良いかもしれません。

```
[EC−CUBE本体ディレクトリ]/var/log 配下
```

### 開発時に送信メール内容を確認したい

MailCatcherを使うと便利です。

[MailCatcher](/development-tools/mail-catcher)




## DB関連

### テーブルにカラムを追加したい

Entityを編集後、以下のスキーマ更新のコマンドを実行してください。

```
$ cd {EC-CUBEディレクトリのパス}
$ bin/console doctrine:schema:update --force --dump-sql
```

### スキーマ更新のコマンドを実行したのだけれど、テーブルに反映されない

どうやらDoctolinのキャッシュが残ってしまっているようです。
以下のコマンドでキャッシュを削除してください。

```
$ cd {EC-CUBEディレクトリのパス}
$ rm -rf var/cache
```

### テーブルに登録されたデータを確認してみたら、日時のデータがなんだかズレている?

EC−CUBE本体とDBのタイムゾーン設定のドキュメントを読んでみると謎がとけます。

[タイムゾーン](/i18n_timezone)

### 本体インストール時やアップグレード時に、テーブルへデータ登録しておきたい場合はどうすればいい?

#### 本体アップグレード時

マイグレーションファイルの追加が必要になります。
マイグレーションファイルはインストール時にも実行されてしまうらしいので、データ重複回避策が必要です。

![migration_versionsテーブル](/images/reverse-lookup/migration_versions.png)

マイグレーションファイルはmigration_versionsテーブルで管理されます。
versionカラムにマイグレーションファイル名の日時部分が登録されます。

[マイグレーションファイルの例](https://github.com/EC-CUBE/ec-cube/blob/4.0/app/DoctrineMigrations/Version20201218044542.php){:target="_blank"}

#### 本体インストール時

csvファイルへのレコード追加が必要になります。

[インポートCSV](https://github.com/EC-CUBE/ec-cube/tree/4.0/src/Eccube/Resource/doctrine/import_csv){:target="_blank"}
Binary file added images/reverse-lookup/dump.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/reverse-lookup/migration_versions.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 16 additions & 1 deletion index.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ EC-CUBEのインストール方法、開発ガイドラインや要素技術の

クラウド版「ec-cube.co」の技術情報については、[こちら](co)を御覧ください。

## 初学者向け情報

+ [学習のステップ](/learning/learning_step)

## 運用者向け情報

運用者向けには以下のサイトをご覧ください。
Expand All @@ -47,7 +51,13 @@ EC-CUBEのインストール方法、開発ガイドラインや要素技術の
+ [4.0.3での注意点](/update/4_0_3)
+ [EC-CUBE4.0から4.1へのマイグレーション](/update-40-41)

## 機能仕様
## 本体の仕様

+ [ER図](https://github.com/EC-CUBE/eccube-specification/tree/4.0/ER-D){:target="_blank"}
+ [結合試験項目書](https://github.com/EC-CUBE/eccube-specification/tree/4.0/IntegrationTest){:target="_blank"}
+ [WebAPI仕様](https://github.com/EC-CUBE/eccube-api4){:target="_blank"}

### 機能仕様

+ [機能一覧](https://www.ec-cube.net/product/functions.php){:target="_blank"}
+ [受注関連](spec_order)
Expand Down Expand Up @@ -102,6 +112,11 @@ EC-CUBEのインストール方法、開発ガイドラインや要素技術の

- [EC-CUBE Penetration Testing with OWASP ZAP](/penetration-testing)

## 逆引きリファレンス

- [Tips](/reverse-lookup/tips)
- [カスタマイズサンプル集](/reverse-lookup/sample-code)

## 開発に参加する

+ [EC-CUBEの開発に参加するには?(公式サイト)](https://www.ec-cube.net/committer/){:target="_blank"}
Expand Down

0 comments on commit 645b065

Please sign in to comment.