Slide 1

Slide 1 text

ॳ৺ऀ޲͚3BJMTೖ໳ϋϯζΦϯ ϚωʔδυΫϥ΢υνʔϜ(.01FQBCP *OD ୈճ(.0ϗείϯ 3VCZPO3BJMTͷ ։ൃ؀ڥΛͭͬͯ͘ΈΑ͏ʂ

Slide 2

Slide 2 text

ϋογϡλά IPTDPONDMPMJQPQ

Slide 3

Slide 3 text

ࠓճͷϋϯζΦϯͷ໨ඪ

Slide 4

Slide 4 text

3VCZPO3BJMTͷ ؆୯ͳΞϓϦέʔγϣϯΛ Πϯλʔωοτʹެ։͢Δ

Slide 5

Slide 5 text

ͭͷΩʔϫʔυ ϩϦϙοϓʂϚωʔδυΫϥ΢υ λʔϛφϧ ύοέʔδϚωʔδϟ)PNFCSFX ΤσΟλ"UPN ϓϩάϥϛϯάݴޠ3VCZ όʔδϣϯ؅ཧπʔϧ(JU 8FCϑϨʔϜϫʔΫ3VCZPO3BJMT

Slide 6

Slide 6 text

3VCZPO3BJMTΞϓϦΛ։ൃͯ͠Πϯλʔωοτʹެ։͢ΔΠϝʔδ SQLite3

Slide 7

Slide 7 text

ͭͷ΍Δ͜ͱ ϩϦϙοϓʂϚωʔδυΫϥ΢υͰΞΧ΢ϯτΛ࡞੒͠Α͏ λʔϛφϧΛىಈͯ͠৮ͬͯΈΑ͏ ύοέʔδϚωʔδϟ)PNFCSFXΛΠϯετʔϧͯ͠ΈΑ͏ )PNFCSFXΛ࢖ͬͯΤσΟλ"UPNɺϓϩάϥϛϯάݴޠ3VCZɺόʔδϣϯ؅ཧπʔϧ(JUΛ Πϯετʔϧͯ͠ΈΑ͏ 3VCZPO3BJMTΞϓϦΛखݩͰىಈͯ͠ΈΑ͏ 3VCZPO3BJMTΞϓϦΛϚωʔδυΫϥ΢υʹɺϚωʔδυΫϥ΢υͷ࢓૊ΈΛ࢖ͬͯΞοϓϩʔ υ σϓϩΠ ͯ͠ΈΑ͏ 3VCZPO3BJMTΞϓϦΛमਖ਼ͯ͠ɺϚωʔδυΫϥ΢υʹ൓өͯ͠ΈΑ͏

Slide 8

Slide 8 text

ϩϦϙοϓʂϚωʔδυΫϥ΢ υͰΞΧ΢ϯτΛ࡞੒͠Α͏

Slide 9

Slide 9 text

ϩϦϙοϓʂϚωʔδυΫϥ΢υͰΞΧ΢ϯτΛ࡞੒͠Α͏ wࠓճ͸։ൃ؀ڥʹϩϦϙοϓʂϚωʔδυΫϥ΢υΛ׆༻͠·͢ wʮϚωʔδυΫϥ΢υʯͰݕࡧɻNDMPMJQPQKQͷϦϯΫΛΫϦοΫ wʮࠓ͙͢͸͡ΊΔʯΛΫϦοΫ ɹɹɹϚωʔδυΫϥ΢υ ݕࡧΩʔϫʔυͰ͢ɻ༗ޮ׆༻͍ͯͩ͘͠͞

Slide 10

Slide 10 text

ϝʔϧΞυϨεͱύεϫʔυΛೖྗ

Slide 11

Slide 11 text

ϝʔϧΞυϨεͱύεϫʔυΛೖྗ wಧ͍ͨϝʔϧΛΫϦοΫͯ͠ೝূ͠·͠ΐ͏

Slide 12

Slide 12 text

ϓϩδΣΫτΛ௥Ճͯ͠ΈΑ͏ wʮϓϩδΣΫτ࡞੒ʹਐΉʯΛΫϦοΫ

Slide 13

Slide 13 text

ϓϩδΣΫτΛ௥Ճͯ͠ΈΑ͏ w ΞϓϦέʔγϣϯબ୒Ͱ3VCZPO3BJMTΛΫϦοΫ w ΧελϜυϝΠϯͱσʔλϕʔεͷύεϫʔυΛೖྗ w σʔλϕʔεͷύεϫʔυ͸ϝϞ͓͍͍ͯͯͩ͘͠͞

Slide 14

Slide 14 text

ϓϩδΣΫτΛ௥Ճͯ͠ΈΑ͏ wʮ࡞੒͢ΔʯΛΫϦοΫ

Slide 15

Slide 15 text

ϓϩδΣΫτΛ௥Ճͯ͠ΈΑ͏ wίϯςφͷ४උΛ଴ͪ·͢ɻɻɻ

Slide 16

Slide 16 text

ϓϩδΣΫτΛ௥Ճͯ͠ΈΑ͏ Ͱ͖ͨʂ

Slide 17

Slide 17 text

λʔϛφϧΛىಈͯ͠৮ͬͯΈΑ ͏

Slide 18

Slide 18 text

λʔϛφϧͬͯԿʁ w จࣈͰ.BD#PPL΍ͦͷଞ͍Ζ͍ΖϓϩάϥϜΛૢ࡞͢ΔͨΊͷϞϊɾπʔϧɾΞϓ Ϧέʔγϣϯ ◦ CUIʢΩϟϥΫλʔɾϢʔβɾΠϯλʔϑΣʔε : จࣈUIʣ ◦ ൓ରʹϚ΢εͰΫϦοΫͨ͠Γը໘Ͱͷૢ࡞͕͋Δͷ͸GUIʢάϥϑΟΧϧɾϢʔ βɾΠϯλʔϑΣʔε : άϥϑΟΧϧͳUIʣ • ίϚϯυ΍εΫϦϓτʢϓϩάϥϜ͕ղऍͰ͖ΔจࣈྻʣΛೖྗ͢Δ͜ͱͰ༷ʑͳૢ ࡞͕Ͱ͖Δ • ͳΜͰλʔϛφϧʁ ◦ ίϚϯυ͕จࣈͳͷͰϋοΩϦ͍ͯ͠Δͷ͕޷·Ε͍ͯΔ ◦ ʮ**ͱ͍͏ίϚϯυΛ࣮ߦͯ͠Έͯʯ ɹɹɹλʔϛφϧɺ#BTI

Slide 19

Slide 19 text

λʔϛφϧΛىಈͯ͠ΈΑ͏ w.BDͷӈ্ͷ஬؟ڸʢݕࡧʣϘλϯΛΫϦοΫ 4QPUMJHIU ɹɹɹ4QPUMJHIU

Slide 20

Slide 20 text

λʔϛφϧΛىಈͯ͠ΈΑ͏ wʮλʔϛφϧʯͱݕࡧͯ͠&OUFSىಈ

Slide 21

Slide 21 text

λʔϛφϧΛىಈͯ͠ΈΑ͏

Slide 22

Slide 22 text

λʔϛφϧͰૢ࡞ͯ͠ΈΑ͏ wQXE wDE wMT wPQFO ࠷ޙʹυοτ͕͋ΔͷͰ஫ҙ w'JOEFSͱ࿈ܞ ɹɹɹ.BDίϚϯυzɺz-JOVYίϚϯυ

Slide 23

Slide 23 text

5JQTίϚϯυΛ࣮ߦͨ͠ΒԿ͔ग़ͨ w߄ͯͣʹಡΜͰΈ·͠ΐ͏ w؆୯ͳӳޠͰ͋Δ͜ͱ͕ଟ͍Ͱ͢ wʮ͏·͍͍ͬͯ͘ΔΑʯͱ͍͏ϝοηʔδ͔΋͠Ε·ͤΜ͠ wʮΤϥʔͩΑʯͱ͍͏ϝοηʔδ͔΋͠Ε·ͤΜ w΋͠ɺΤϥʔͷͱ͖͸࣍ʹਐ·ͣελοϑΛݺΜͰ͍ͩ͘͞

Slide 24

Slide 24 text

5JQTίϐʔϖʔετͱλʔϛφϧͰͷ࣮ߦ wλʔϛφϧͰ͸ίϚϯυΛೖྗ͝&OUFSʢվߦʣΛͨ͠Β࣮ߦ w΋͠ɺվߦ͞Ε͍ͯΔεΫϦϓτΛλʔϛφϧʹίϐʔͯ͠షΓ෇͚ ͨΒ࣮ߦ͞ΕΔͷͰ஫ҙ͠·͠ΐ͏

Slide 25

Slide 25 text

5JQT'JOEFS͔ΒλʔϛφϧΛ։͚ΔΑ͏ʹ͠Α͏ w PQFOίϚϯυͰλʔϛφϧ͔Β'JOEFSΛ։͚ ͨͷͰɺʮٯʯΛͰ͖ΔΑ͏ʹ͠·͠ΐ͏ w <γεςϜ؀ڥઃఆ><ΩʔϘʔυ><γϣʔ τΧοτ>λϒͰ<αʔϏε>ʹ͋Δ<ϑΥϧμʹ৽ نλʔϛφϧ>ʹνΣοΫΛ͍ΕΔ

Slide 26

Slide 26 text

ύοέʔδϚωʔδϟ )PNFCSFXΛ Πϯετʔϧͯ͠ΈΑ͏

Slide 27

Slide 27 text

ύοέʔδϚωʔδϟ)PNFCSFXͬͯԿʁ wΤϯδχΞ͕࢖͏"QQ4UPSFΈ͍ͨͳ΋ͷʢ.BD༻ʣ wओʹλʔϛφϧͰ࣮ߦ͠·͢ wλʔϛφϧͰ࢖͏ίϚϯυ͔ΒΤσΟλͷΑ͏ͳΞϓϦέʔγϣϯ· Ͱ؆୯ʹΠϯετʔϧΞϯΠϯετʔϧͰ͖·͢ ɹɹɹl.BD)PNFCSFX

Slide 28

Slide 28 text

)PNFCSFXΛΠϯετʔϧͯ͠ΈΑ͏ wλʔϛφϧͰ YDPEFTFMFDUJOTUBMM Λ࣮ߦ w࣮ߦͰ͖ͳ͍৔߹͸"QQ4UPSFͰ9$PEFΛΠϯετʔϧ wʮ)PNFCSFXʯͰݕࡧ wIUUQTCSFXTIJOEFY@KBͷΠϯετʔϧεΫϦϓτΛίϐʔͯ͠λʔ ϛφϧʹϖʔετ࣮ͯ͠ߦ

Slide 29

Slide 29 text

)PNFCSFXΛ࢖ͬͯ ΤσΟλ"UPNɺ ϓϩάϥϛϯάݴޠ3VCZɺ όʔδϣϯ؅ཧπʔϧ(JUΛ Πϯετʔϧͯ͠ΈΑ͏

Slide 30

Slide 30 text

ΤσΟλ"UPNͷΠϯετʔϧ > brew cask install atom ɹɹɹΤσΟλ"UPN

Slide 31

Slide 31 text

࿅शΤσΟλ"UPN wλʔϛφϧͰͲ͔͜ͷσΟϨΫτϦʹҠಈͯ͠ɺͦ͜ʹ"UPNͰϑΝ ΠϧΛ࡞੒ͯ͠Έ·͠ΐ͏ •࢖͏ίϚϯυ: •cd •open . •atom ϑΝΠϧ໊

Slide 32

Slide 32 text

ϓϩάϥϛϯάݴޠ3VCZͷΠϯετʔϧ > brew install readline ruby-build rbenv > brew install mysql # MySQLͷΠϯετʔϧ > echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile > echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile > source ~/.bash_profile > rbenv install 2.5.1 > rbenv global 2.5.1 > ruby -v ɹɹɹl.BD3VCZSCFOWz

Slide 33

Slide 33 text

όʔδϣϯ؅ཧπʔϧ(JUͷΠϯετʔϧ > brew install git > git config --global user.name "[໊લΛೖΕ͍ͯͩ͘͞]" > git config --global user.email "[ϝʔϧΞυϨεΛೖΕ͍ͯͩ͘͞]" > git --version ɹɹɹ(JU

Slide 34

Slide 34 text

3VCZPO3BJMTΞϓϦΛ खݩͰىಈͯ͠ΈΑ͏

Slide 35

Slide 35 text

3VCZPO3BJMTΛ࢖͏લͷલ४උ ඞཁͳ3VCZ੡ͷίϚϯυΛΠϯετʔϧ > gem install bundler --no-document > gem install rails --no-document ɹɹɹ3VCZ#VOEMFS3VCZHFN

Slide 36

Slide 36 text

3VCZPO3BJMTΞϓϦΛ։ൃͯ͠Πϯλʔωοτʹެ։͢ΔΠϝʔδ SQLite3

Slide 37

Slide 37 text

3VCZPO3BJMTϓϩδΣΫτΛ࡞੒͠Α͏ wͭͭͷϓϩδΣΫτ͕8FCΞϓϦέʔγϣϯ wେ͖͍αʔϏεͩͱͭҎ্ͷϓϩδΣΫτ͔Βߏ੒͞ΕΔ͜ͱ΋ wࠓճ͸IPTDPOͱ͍͏໊લͷϓϩδΣΫτΛͭ࡞੒͠·͢ > cd [Ͳ͔͜Կ͔࡞ͬͯྑ͍σΟϨΫτϦ] > rails new hoscon

Slide 38

Slide 38 text

σʔλϕʔεͷ઀ଓઃఆΛ͠Α͏ > cd hoscon/ > atom config/database.yml

Slide 39

Slide 39 text

σʔλϕʔεͷ઀ଓઃఆΛ͠Α͏

Slide 40

Slide 40 text

σʔλϕʔεͷ઀ଓઃఆΛ͠Α͏ wෆඞཁͳλϒΛফ͢ͱ͜ͷ Α͏ʹͳΓ·͢

Slide 41

Slide 41 text

σʔλϕʔεͷ઀ଓઃఆΛ͠Α͏ default: &default adapter: sqlite3 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> timeout: 5000 development: <<: *default database: db/development.sqlite3 test: <<: *default database: db/test.sqlite3 production: <<: *default adapter: mysql2 database: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ] username: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ] password: [ϝϞͨ͠σʔλϕʔεͷύεϫʔυ] host: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ]

Slide 42

Slide 42 text

σʔλϕʔεͷ઀ଓઃఆΛ͠Α͏ wຊ൪ͷσʔλϕʔεઃఆ͸ϚωʔδυΫϥ΢υͷϓϩδΣΫτը໘Λ ֬ೝ

Slide 43

Slide 43 text

(FNpMFͷઃఆʹANZTRMAΛ௥Ճ͠Α͏ wࠓճ͸ϚωʔδυΫϥ΢υͰ.Z42-ʹ઀ଓ͢ΔͷͰNZTRMͱ͍͏ HFNΛ௥Ճ͠·͢ʢຊ൪؀ڥ͚ͩʣ > cd hoscon/ > atom Gemfile # ຤ඌʹҎԼΛ௥Ճ # gem 'mysql2' > bundle install ɹɹɹ(FNpMFl3BJMTNZTRM

Slide 44

Slide 44 text

3VCZPO3BJMTΛىಈͯ͠ΈΑ͏ wϒϥ΢βͰIUUQMPDBMIPTU ʹΞΫηεͰ͖·͢ > cd hoscon/ > rails server # Ctrl+C ͰऴྃͰ͖·͢ ɹɹɹlSBJMTTFSWFSz

Slide 45

Slide 45 text

ϓϩδΣΫτͷιʔείʔυΛίϛοτ͠Α͏ wόʔδϣϯ؅ཧπʔϧ(JUΛར༻ͯ͠ࠓ·ͰͷιʔείʔυΛه࿥ʢί ϛοτʣ͠·͢ > git init # σΟϨΫτϦΛGitͰ؅ཧ͢ΔΑ͏ʹઃఆ > git add . # શͯͷ௥Ճͯ͠Α͍ϑΝΠϧΛGitʹ؅ཧͤ͞Δ > git commit -m 'My First Commit’ # ίϛοτ > git log # ίϛοτͷϩάΛ֬ೝ ɹɹɹlHJUJOJUlHJUMPHz

Slide 46

Slide 46 text

ιʔείʔυΛमਖ਼ͯ͠ίϛοτ͠Α͏ wϒϥ΢βͰIUUQMPDBMIPTUJEFBT ʹΞΫηεͯ͠ΈΑ͏ > rails generate scaffold idea name:string description:text picture:string # ideas ςʔϒϧΛ࡞ͬͯૢ࡞͢ΔͨΊͷίʔυΛੜ੒ > rails db:migrate # ideas ςʔϒϧΛ࡞੒ > rails server # αʔόΛىಈ ɹɹɹlSBJMTίϚϯυzl$36%zlTDB⒎PMEz

Slide 47

Slide 47 text

ιʔείʔυΛमਖ਼ͯ͠ίϛοτ͠Α͏ wSBJMTHFOFSBUFͰࣗಈͰߦΘΕͨमਖ਼Λ(JUΛར༻ͯ֬͠ೝɾه࿥ ʢίϛοτʣ͠Α͏ > git status # ιʔείʔυͷมߋঢ়ଶΛ֬ೝͰ͖·͢ > git diff # ιʔείʔυͷࠩ෼Λ֬ೝͰ͖·͢ > git add . > git commit -m 'My Second Commit' > git log ɹɹɹl(JUίϚϯυz

Slide 48

Slide 48 text

3VCZPO3BJMTΞϓϦΛ ϚωʔδυΫϥ΢υʹɺ ϚωʔδυΫϥ΢υͷ࢓૊ΈΛ࢖ͬ ͯΞοϓϩʔυ σϓϩΠ ͯ͠ΈΑ ͏

Slide 49

Slide 49 text

σϓϩΠલͷલ४උ 44)ͷެ։伴ͷઃఆ wϚωʔδυΫϥ΢υʹ44)Ͱ઀ଓͰ͖ΔΑ͏ʹઃఆ͠·͠ΐ͏ wϚωʔδυΫϥ΢υ44)ίϚϯυͷ෦෼Λίϐʔͯ͠λʔϛφϧͰ࣮ ߦͯ͠Έ·͠ΐ͏

Slide 50

Slide 50 text

σϓϩΠલͷલ४උ 44)ͷެ։伴ͷઃఆ wެ։伴ͱൿີ伴ͷରΛ࡞੒ͯ͠ɺެ։伴ΛΫϦοϓϘʔυʹίϐʔ͠ ·͢ > install -m 0700 -d ~/.ssh # σΟϨΫτϦͷ࡞੒ > ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa # ެ։伴ͱൿີ伴Λ࡞੒ > cat ~/.ssh/id_rsa.pub | pbcopy # ެ։伴ΛΫϦοϓϘʔυʹίϐʔ ɹɹɹlDBUίϚϯυlQCDPQZz

Slide 51

Slide 51 text

σϓϩΠલͷલ४උ ϚωʔδυΫϥ΢υʹެ։伴Λొ࿥ wϚωʔδυΫϥ΢υӈ্ͷϝχϡʔ͔Β44)ެ։伴ͷొ࿥ΛΫϦοΫ

Slide 52

Slide 52 text

σϓϩΠલͷલ४උ ϚωʔδυΫϥ΢υʹެ։伴Λొ࿥ w44)ެ։伴Λϖʔετͯ͠ొ࿥͠·͢

Slide 53

Slide 53 text

σϓϩΠલͷલ४උ ϚωʔδυΫϥ΢υʹެ։伴Λొ࿥ w΋͏Ұճ44)ίϚϯυΛ࣮ߦͯ͠Έ·͠ΐ͏

Slide 54

Slide 54 text

σϓϩΠલͷલ४උ TFDSFU@LFZ@CBTFͷઃఆ wϚωʔδυΫϥ΢υ͸ຊ൪؀ڥ QSPEVDUJPO ͱͯ͠ಈ͖·͢ w3BJMTͰ͸TFDSFU@LFZ@CBTFͷઃఆ͕ඞཁͰ͢ > EDITOR=‘atom —-wait’ bin/rails credentials:edit ɹɹɹlSBJMTTFDSFU@LFZ@CBTFz

Slide 55

Slide 55 text

σϓϩΠલͷલ४උ NBTUFSLFZͷίϛοτ wϚωʔδυΫϥ΢υ͸ຊ൪؀ڥ QSPEVDUJPO ͱͯ͠ಈ͖·͢ wຊདྷͰ͋Ε͹NBTUFSLFZ͸ຊ൪؀ڥʹ(JUͱ͸ผͰઃஔ͢Δͷ͕๬· ͍͠Ͱ͕͢ɺࠓճ͸؆୯ͷͨΊʹNBTUFSLFZ΋ίϛοτ͠·͢ > git add -f config/master.key > git commit -m 'Add master.key THIS IS BAD WAY' ɹɹɹlSBJMTTFDSFU@LFZ@CBTFz

Slide 56

Slide 56 text

σϓϩΠલͷલ४උ ੩తϑΝΠϧ΋3BJMTͰ഑৴͢Δ wࠓճ͸ϚωʔδυΫϥ΢υίϯςφͰಈ͘ͷͰ੩తϑΝΠϧ΋3BJMT Ͱ഑৴͢ΔΑ͏ʹઃఆ͠·͠ΐ͏ wҰൠతʹ͸੩తϑΝΠϧ͸3BJMTͰ͸ͳ͘8FCαʔόʹ഑৴Λ೚ͤ ΔͳͲͷઃఆΛ͢Δͱྑ͍Ͱ͢ w > atom config/environments/production.rb ɹɹɹlSBJMT੩తϑΝΠϧz

Slide 57

Slide 57 text

σϓϩΠલͷલ४උ ੩తϑΝΠϧ΋3BJMTͰ഑৴͢Δ w๨Εͣʹίϛοτ > git add . > git commit -m ‘Rails public server enabled’

Slide 58

Slide 58 text

ϚωʔδυΫϥ΢υ༻ͷσϓϩΠ༻(JUͱ࿈ܞ͢Δ wϚωʔδυΫϥ΢υͷ3BJMTίϯςφͱ/PEFίϯςφ͸σϓϩΠ༻(JU ϦϙδτϦ͕͋Γ·͢ wͦͷσϓϩΠ༻ϦϙδτϦʹιʔείʔυΛHJUQVTI͢Δ͜ͱͰɺ ϚωʔδυΫϥ΢υʹσϓϩΠ͕Ͱ͖·͢ ɹɹɹlHJUQVTIz

Slide 59

Slide 59 text

ϚωʔδυΫϥ΢υ༻ͷσϓϩΠ༻(JUͱ࿈ܞ͢Δ wϚωʔδυΫϥ΢υͷϓϩδΣΫτը໘͔ΒʮϦϙδτϦʯΛίϐʔ ͯ͠ɺλʔϛφϧͰ࣮ߦ ɹɹɹlHJUSFNPUFBEEz

Slide 60

Slide 60 text

ϚωʔδυΫϥ΢υ༻ͷσϓϩΠ༻(JUͱ࿈ܞ͢Δ wIUUQTMPMJQPQJPJEFBTʹΞΫηεͯ͠Έ·͠ΐ͏ ɹɹɹlHJUQVTIz > git push lolipop master

Slide 61

Slide 61 text

͜͜·ͰͰ ϋϯζΦϯͷϝΠϯηογϣϯ͸ ऴྃͰ͢

Slide 62

Slide 62 text

3VCZPO3BJMTΞϓϦΛमਖ਼͠ ͯɺϚωʔδυΫϥ΢υʹ൓өͯ͠ ΈΑ͏

Slide 63

Slide 63 text

ϚωʔδυΫϥ΢υΛ࢖ͬͯ։ൃΛ͠Α͏ w࣮͸͜͜·ͰͰɺʮ3BJMT(JSMTʯͱ͍͏ϓϩδΣΫτͷʮ3BJMT(JSMTΨ Πυʯͷʮ͸͡ΊͯΞϓϦνϡʔτϦΞϧʯͷʮ*EFBͷTDB⒎PME Λ͢Δʯ·ͰऴΘ͍ͬͯ·͢ wʮ͋ͳͨͷΞϓϦΛΠϯλʔωοτʹެ։͠Α͏ʯ΋͢ͰʹͰ͖ͯ ͍·͢Ͷ w࣍͸ʮσβΠϯ͢ΔʯͰ͢ɻੋඇਐΊ͍ͯͬͯΈ·͠ΐ͏ ɹɹɹl3BJMT(JSMTz

Slide 64

Slide 64 text

ΞϯέʔτΛੋඇ͓ئ͍͠·͢ʂʂ

Slide 65

Slide 65 text

ϥΠηϯε w͜ͷϋϯζΦϯͷࢿྉͷҰ෦͸3BJMT(JSMTΨΠυ ೔ຊޠ൛ IUUQ SBJMTHJSMTKQ Λࢀߟʹ͍ͯ͠·͢ɻ·ͨɺ3BJMT(JSMTΨΠυʹͭͳ͕ ΔΑ͏ʹ࡞ΒΕ͍ͯ·͢ɻ 3BJMT(JSMTΨΠυϥΠηϯε 5IJTXPSLJTMJDFOTFEVOEFSB$SFBUJWF$PNNPOT"UUSJCVUJPO4IBSF"MJLF-JDFOTF IUUQDSFBUJWFDPNNPOTPSHMJDFOTFTCZTB 3BJMT(JSMT IUUQ SBJMTHJSMTDPN u$SBGUFEXJUIFYDJUFNFOUGSPN)FMTJOLJ 'JOMBOEu'PMMPXVTPO5XJUUFS IUUQTUXJUUFSDPNSBJMTHJSMT BOE'BDFCPPL IUUQTXXXGBDFCPPLDPNSBJMTHJSMT

Slide 66

Slide 66 text

5JQT։ൃ؀ڥʹ΋.Z42-Λར༻ ͍ͨ͠

Slide 67

Slide 67 text

ιʔείʔυΛमਖ਼ͯ͠ίϛοτ͠Α͏ > brew cask install sequel-pro # MySQL؅ཧπʔϧͷΠϯετʔϧ > brew install mysql-client > brew services mysql start # MySQLͷىಈ > brew services list ɹɹɹl.Z42-zlσʔλϕʔεzl4FRVFM1SPz

Slide 68

Slide 68 text

.Z42-ʹ઀ଓ͢ΔϢʔβΛ࡞੒͢Δ > mysql -uroot mysql> CREATE USER myuser@localhost identified with mysql_native_password by ‘mypass'; mysql> exit > ɹɹɹl.Z42-zlσʔλϕʔεzl4FRVFM1SPz w ࠷৽ͷ.Z42-Ͱ͸σϑΥϧτͷೝূํ͕ࣜDBDIJOH@TIB@QBTTXPSEͱͳ͓ͬͯΓ4FRVFM1SPͳͲ͕ ରԠ͍ͯ͠ͳ͍ͨΊɺ.Z42-ҎલͰར༻͞Ε͍ͯͨNZTRM@OBUJWF@QBTTXPSEΛར༻ͨ͠ϢʔβΛ࡞ ੒͍ͯ͠·͢

Slide 69

Slide 69 text

3VCZPO3BJMTΛ࢖͏લͷલ४උ σʔλϕʔεͷ࡞੒ w4QPUMJHIUͰʮ4FRVFM1SPʯΛݕࡧͯ͠&OUFSىಈ

Slide 70

Slide 70 text

3VCZPO3BJMTΛ࢖͏લͷલ४උ σʔλϕʔεͷ࡞੒ wࠨԼͷϘλϯΛԡͯ͠৽ن઀ଓઃఆΛ࡞੒

Slide 71

Slide 71 text

3VCZPO3BJMTΛ࢖͏લͷલ४උ σʔλϕʔεͷ࡞੒ w઀ଓ৘ใΛೖྗ ઌ΄Ͳ࡞੒ͨ͠Ϣʔβ໊ͱύεϫʔ υΛೖྗ NZVTFSNZQBTT

Slide 72

Slide 72 text

3VCZPO3BJMTΛ࢖͏લͷલ४උ σʔλϕʔεͷ࡞੒ w઀ଓ৘ใͰ͖ͨΒσʔλϕʔεΛͭ௥Ճʢ։ൃ༻ͱςετ༻ʣ ɹɹɹσʔλϕʔε࡞੒.Z42-

Slide 73

Slide 73 text

3VCZPO3BJMTΛ࢖͏લͷલ४උ σʔλϕʔεͷ࡞੒ wIPTDPOͱ͍͏໊લͷ։ൃ༻σʔλϕʔεΛ࡞੒

Slide 74

Slide 74 text

3VCZPO3BJMTΛ࢖͏લͷલ४උ σʔλϕʔεͷ࡞੒ wIPTDPO@UFTUͱ͍͏໊લͷςετ༻σʔλϕʔεΛ࡞੒ wࠓճ͸࢖͍·ͤΜ

Slide 75

Slide 75 text

5JQT4FRVFM1SP͕ͲͪΒͷσʔλϕʔεΛݟ͍ͯΔ͔ wϝχϡʔͷ্ͷํʹද͕ࣔ͋Γ·͢

Slide 76

Slide 76 text

σʔλϕʔεͷ઀ଓઃఆΛ͠Α͏ default: &default adapter: mysql2ɹ pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> timeout: 5000 development: <<: *default ɹusername: root database: hoscon host: 127.0.0.1 test: <<: *default username: root database: hoscon_test host: 127.0.0.1 production: <<: *default database: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ] username: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ] production: <<: *default database: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ] username: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ] password: [ϝϞͨ͠σʔλϕʔεͷύεϫʔυ] host: [ϚωΫϥͷϓϩδΣΫτը໘Λ֬ೝ]