2017 © Pedro Pelรกez
 

library board

image

visualplus/board

  • Wednesday, October 7, 2015
  • by doojinso
  • Repository
  • 2 Watchers
  • 4 Stars
  • 126 Installations
  • JavaScript
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 6 Versions
  • 0 % Grown

The README.md

board

๋ผ๋ผ๋ฒจ์œผ๋กœ ๊ฒŒ์‹œํŒ์„ ํŽธํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํŒจํ‚ค์ง€์ž…๋‹ˆ๋‹ค., (*1)

์„ค์น˜๋ฐฉ๋ฒ•

composer require visualplus/board

์„ค์ •๋ฐฉ๋ฒ•

config/app.php์— ์žˆ๋Š” providers์— Visualplus/Board/ServiceProvider::class ์ถ”๊ฐ€

๊ธฐ๋ณธ ์Šคํ‚จ์„ ์—ฐ๊ฒฐํ•ด์ฃผ๊ณ  ๊ธฐ๋ณธ db ํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค์–ด์ฃผ๋Š” migration ํŒŒ์ผ์„ ๋ณต์‚ฌํ•˜๊ธฐ ์œ„ํ•œ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ( ๊ธฐ๋ณธ ์Šคํ‚จ ๋ฐ migration ํŒŒ์ผ์ด ํ•„์š”์—†๋‹ค๋ฉด ์•ˆํ•˜์…”๋„ ๋ฉ๋‹ˆ๋‹ค. ), (*2)

ServiceProvider๋ฅผ ์ถ”๊ฐ€ ํ›„, (*3)

php artisan vendor:publish

๋ช…๋ น์–ด๋ฅผ ์น˜๋ฉด database/migrations ์•ˆ์— create_board.php ํŒŒ์ผ์ด ์ƒ๊น๋‹ˆ๋‹ค. ์ด ํŒŒ์ผ์€ ๊ฒŒ์‹œํŒ ์„ค์ • ํ…Œ์ด๋ธ”, ๊ฒŒ์‹œ๊ธ€ ํ…Œ์ด๋ธ”, ๊ฒŒ์‹œ๊ธ€ ์—ฐ๊ฒฐ ํŒŒ์ผ ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑ์„ ๋„์™€์ค๋‹ˆ๋‹ค., (*4)

create_board.php๋ฅผ ๋ณด๋ฉด ๊ฒŒ์‹œํŒ์„ ๋™์ž‘์‹œํ‚ค๊ธฐ ์œ„ํ•œ ๊ธฐ๋ณธ ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ๊ฐ€ ์ •์˜๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค., (*5)

๋ชจ๋“  ๊ฒŒ์‹œํŒ์€ ๊ฒŒ์‹œ๊ธ€ ์ €์žฅํ•  ํ…Œ์ด๋ธ” 1๊ฐœ, ํŒŒ์ผ์„ ์ €์žฅํ•  ํ…Œ์ด๋ธ” 1๊ฐœ๊ฐ€ ๊ผญ ํ•„์š”ํ•˜๋ฉฐ ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€์—์„œ ํ…Œ์ด๋ธ”๋ช…์„ ์ง€์ •ํ•ด์ฃผ์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค. ( ํŒŒ์ผ ์ €์žฅํ•  ํ…Œ์ด๋ธ”์€ ๊ฒŒ์‹œ๊ธ€ ํ…Œ์ด๋ธ”๋ช… + '_files'๋กœ ํ†ต์ผํ•ฉ๋‹ˆ๋‹ค. ), (*6)

๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€ ์„ค์ •

์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ํ•˜๋‚˜ ์ƒ์„ฑ ํ›„ Visualplus\Board\AdminController๋ฅผ ์ƒ์†ํ•ฉ๋‹ˆ๋‹ค., (*7)

php artisan make:controller BoardAdminController

class BoardAdminController extends \Visualplus\Board\AdminController
{
    ...
}

๋ชจ๋ธ ๋ฐ”์ธ๋”ฉ

AdminController๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ชจ๋ธ์„ ํ•„ํžˆ ๋ฐ”์ธ๋”ฉ ํ•ด์ฃผ์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค., (*8)

protected $model = '';

๊ฒŒ์‹œํŒ ์„ค์ • ๋ชจ๋ธ์„ ์ ์–ด์ค๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ํ…Œ์ด๋ธ”์˜ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์‹œ๋ ค๋ฉด, (*9)

php artisan make:model BoardConfig
protected $model = '\App\BoardConfig';

์œ„์™€๊ฐ™์ด ์„ค์ •ํ•ด์ฃผ์„ธ์š”., (*10)

๊ฒŒ์‹œํŒ ํŽ˜์ด์ง€ ์„ค์ •

์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ํ•˜๋‚˜ ์ƒ์„ฑ ํ›„ Visualplus\Board\BoardController๋ฅผ ์ƒ์†ํ•ฉ๋‹ˆ๋‹ค., (*11)

php artisan make:controller FreeBoardController

class FreeBoardController extends \Visualplus\Board\BoardController
{
    ...
}

์˜ต์…˜ ๋ณ€๊ฒฝ

BoardController๋Š” ๋ช‡๊ฐ€์ง€ ์˜ต์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค., (*12)

๊ฒŒ์‹œํŒ ์„ค์ • ๋ชจ๋ธ ๋ฐ”์ธ๋”ฉ

protected $config_model = '';

๊ฐ ๊ฒŒ์‹œํŒ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์ž์‹ ์˜ ์„ค์ •๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด ๊ฒŒ์‹œํŒ ์„ค์ • ๋ชจ๋ธ์„ ์ง€์ •ํ•ด์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ๊ธฐ๋ณธ๊ฐ’์ด ์—†์œผ๋ฉฐ ๋ฌด์กฐ๊ฑด ์„ค์ •์„ ํ•ด์ฃผ์…”์•ผ ํ•˜๋Š” ๊ฐ’ ์ž…๋‹ˆ๋‹ค., (*13)

์ œ๊ณต๋˜๋Š” migrations ํŒŒ์ผ์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ์„ ํ•˜์…จ๋‹ค๋ฉด, (*14)

php artisan make:model BoardConfig
protected $config_model = '\App\BoardConfig';

์œ„์™€ ๊ฐ™์ด ์„ค์ •์„ ํ•ด ์ฃผ์„ธ์š”., (*15)

๊ฒŒ์‹œํŒ ๋ชจ๋ธ ๋ฐ”์ธ๋”ฉ

// ๊ฒŒ์‹œ๊ธ€ ํ…Œ์ด๋ธ” ๋ชจ๋ธ
protected $articles_model = 'Visualplus\Board\Articles';

// ๊ฒŒ์‹œ๊ธ€ ํŒŒ์ผ ํ…Œ์ด๋ธ” ๋ชจ๋ธ
protected $article_files_model = 'Visualplus\Board\ArticleFiles';

๊ฒŒ์‹œํŒ ๊ธ€์„ ์ €์žฅํ•  ๋ชจ๋ธ๊ณผ, ์ฒจ๋ถ€ํŒŒ์ผ์„ ์ €์žฅํ•  ๋ชจ๋ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋ฉฐ ํ…Œ์ด๋ธ”๋ช…์€ ๋”ฐ๋กœ ๊ธฐ์žฌํ•ด์ฃผ์‹ค ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ( ๊ด€๋ฆฌ์žํŽ˜์ด์ง€์—์„œ ํ•ด๋‹น ๊ฒŒ์‹œํŒ์˜ ํ…Œ์ด๋ธ”์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ), (*16)

์ž„์˜๋กœ ๋งŒ๋“  ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์œผ์‹œ๋‹ค๋ฉด ์œ„ ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด์ฃผ์„ธ์š”., (*17)

์Šคํ‚จ.

์ดˆ๊ธฐ ๊ฒŒ์‹œํŒ ์Šคํ‚จ์€ ๊ธฐ๋ณธ ์Šคํ‚จ์ด๋ฉฐ ๋ณ„๋กœ ์ด์˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๊ฐ์ž ์Šคํƒ€์ผ์— ๋งž๊ฒŒ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์„ ํ•˜์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฒŒ์‹œํŒ์˜ ์Šคํ‚จ์€, (*18)

  1. index.blade.php -> ๊ฒŒ์‹œ๊ธ€ ๋ฆฌ์ŠคํŠธ
  2. create.blade.php -> ๊ฒŒ์‹œ๊ธ€ ์ƒ์„ฑ, ๊ฒŒ์‹œ๊ธ€ ์ˆ˜์ •
  3. show.blade.php -> ๊ฒŒ์‹œ๊ธ€ ๋ณด๊ธฐ

์œ„ 3๊ฐ€์ง€ ํŒŒ์ผ์ด ํ•„์š”ํ•˜๋ฉฐ. ์Šคํ‚จ์„ ๋งŒ๋“œ์‹  ํ›„ ์ ‘๊ทผ๊ฐ€๋Šฅํ•œ view ์œ„์น˜๋ฅผ ์ง€์ •ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด 'board::'๋Š” ํŒจํ‚ค์ง€ ๋‚ด์˜ 'views' ๋””๋ ‰ํ† ๋ฆฌ์™€ ๋งคํ•‘๋˜์–ด์žˆ์œผ๋ฉฐ, views์•ˆ์— basic์ด๋ผ๋Š” ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ 'board::basic'์€ 'vendor/visualplus/board/src/views/basic'์„ ์ฐธ์กฐํ•˜๋ฉฐ ์ด ๋””๋ ‰ํ† ๋ฆฌ ์•ˆ์— ์œ„์— ๋‚˜์—ดํ•œ 3๊ฐ€์ง€ ํŒŒ์ผ์ด ๋ชจ๋‘ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค., (*19)

์Šคํ‚จ์€ ๊ด€๋ฆฌ์ž ํ™”๋ฉด์—์„œ ๊ฒŒ์‹œํŒ ์ƒ์„ฑ์‹œ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค., (*20)

ํ•œ ํ™”๋ฉด์— ํ‘œ์‹œํ•  ๋ฆฌ์ŠคํŠธ ๊ฐœ์ˆ˜.

protected $itemsPerPage = 10;

๊ธฐ๋ณธ 10๊ฐœ์˜ ๊ฒŒ์‹œ๊ธ€์„ ํ•œ ํŽ˜์ด์ง€์— ๋ฟŒ๋ ค์ค๋‹ˆ๋‹ค. ์œ„ ๊ฐ’์„ ์•Œ๋งž๊ฒŒ ๋ณ€๊ฒฝํ•˜์—ฌ ์‚ฌ์šฉํ•˜์„ธ์š”., (*21)

ํŒŒ์ผ ์—…๋กœ๋“œ ๊ฒฝ๋กœ

protected $uploadPath = '../storage/app/board/';

๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ์‹œ ์ฒจ๋ถ€ํ•œ ํŒŒ์ผ์€ ๊ธฐ๋ณธ์œผ๋กœ storage/app/board ๋””๋ ‰ํ† ๋ฆฌ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ๋ช…์€ ํ˜„์žฌ timestamp + ์˜ฌ๋ฆฐ ํŒŒ์ผ ํ™•์žฅ์ž ์ž…๋‹ˆ๋‹ค., (*22)

์œ„ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜์—ฌ ์ฒจ๋ถ€ํŒŒ์ผ์ด ์ €์žฅ๋  ์œ„์น˜๋ฅผ ์ˆ˜์ •ํ•˜์„ธ์š”., (*23)

๋ผ์šฐํŒ… ์„ค์ •

Route::resource('board/admin', '๊ฒŒ์‹œํŒ ๊ด€๋ฆฌ์ž ์ปจํŠธ๋กค๋Ÿฌ');
Route::resource('board/{bo_id}/board', '๊ฒŒ์‹œํŒ ์ปจํŠธ๋กค๋Ÿฌ');

์œ„์™€ ๊ฐ™์ด ์„ค์ •ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค., (*24)

์ ‘๊ทผ์€, (*25)

board/[๊ฒŒ์‹œํŒ ์„ค์ •์— ๋“ฑ๋ก๋œ ๊ฒŒ์‹œํŒ id๊ฐ’]

์œผ๋กœ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค., (*26)

๋„ค์ด๋ฒ„ ์Šค๋งˆํŠธ ์—๋””ํ„ฐ ์‚ฌ์šฉ

์Šค๋งˆํŠธ ์—๋””ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๋ทฐ์—์„œ ์•„๋ž˜ ๋‚ด์šฉ์„ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”. textarea๊ฐ€ ๋“ค์–ด๊ฐ€์•ผ ํ•  ๊ณณ์—์„œ includeํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค., (*27)

basic/create.blade.php ์ฐธ์กฐ., (*28)

@include ('board::plugins.smart_editor.editor', ['name' => [์ปจํŠธ๋กค ๋ช…], 'value' => [์ดˆ๊ธฐ๊ฐ’]])

The Versions

07/10 2015

dev-master

9999999-dev

  Sources   Download

MIT

The Requires

 

by Doojin So

07/10 2015

1.0.4

1.0.4.0

  Sources   Download

MIT

The Requires

 

by Doojin So

06/10 2015

1.0.3

1.0.3.0

  Sources   Download

MIT

The Requires

 

by Doojin So

06/10 2015

1.0.2

1.0.2.0

  Sources   Download

MIT

The Requires

 

by Doojin So

06/10 2015

1.0.1

1.0.1.0

  Sources   Download

MIT

by Doojin So

04/10 2015

1.0.0

1.0.0.0

  Sources   Download

MIT

by Doojin So