본문 바로가기

반응형

DEVELOPMENT/Ruby on Rails

(11)
DEVELOPMENT/Ruby on Rails [Rails] 로컬에 Ruby와 Rails 설치하기 이 글에서는 Windows 환경에서 Bash를 이용하여 Ruby와 Rails를 설치하고, Git과 NodeJS를 세팅하여 개발 환경을 준비하는 방법을 다룬다.Linux 서브시스템 설치먼저 Windows에서 Linux 환경을 실행하기 위해 **Windows Subsystem for Linux (WSL)**를 설치한다.명령 프롬프트(CMD)를 실행한다.다음 명령어를 입력하여 설치한다. lxrun /install설치 과정에서 사용자 ID와 비밀번호를 입력한다.예: ID = dhooonk, Password = 사용자가 알고 있는 값설치가 완료되면 Bash 환경으로 들어가 다음 단계를 진행한다.필수 패키지 설치Ruby와 Rails를 설치하기 위해 필요한 패키지를 설치한다. Bash에서 다음 명령어를 순서대로 입력..
DEVELOPMENT/Ruby on Rails [Rails] Devise Confirmable과 Mailgun으로 이메일 인증 구현하기 Devise Confirmable 활성화하기이제 본격적으로 이메일 인증을 위한 Confirmable 기능을 켜보자.User 모델이 생성된 직후에는 Confirmable이 주석 처리되어 있다.# t.string :confirmation_token# t.datetime :confirmed_at# t.datetime :confirmation_sent_at# t.string :unconfirmed_email이 주석을 모두 제거해야 한다.그리고 User 모델에서도 confirmable을 추가한다.devise :database_authenticatable, :registerable, :recoverable, :rememberable, :validatable, :confirmable쉼표를..
DEVELOPMENT/Ruby on Rails [Rails] Rails에서 Devise로 회원가입 기능 구현하기 Rails애플리케이션에 회원가입과 로그인 기능을 추가하기 위해 Devise를 사용하는 과정은 다음과 같다.Devise 설치먼저 Gemfile에 Devise를 추가한다.gem 'devise'추가한 뒤 다음 명령으로 설치를 진행한다.bundle install rails generate devise:install User 모델 생성Devise가 적용된 User 모델을 생성한다.rails generate devise userUser 모델에는 기본적으로 email, encrypted_password 등이 포함된다.컨트롤러 생성 및 라우트 확인동작 확인을 위해 간단한 컨트롤러를 만든다.rails g controller usertest라우트를 설정하거나 테스트 페이지로 연결해 Devise가 정상 작동하는지 확인한다...
DEVELOPMENT/Ruby on Rails [Rails] Rails로 DB에 데이터 저장하기 – 기초 완전 정리 이번 글에서는 Rails에서 사용자 입력을 받아 DB에 저장하는 과정까지 정리한다.. Ruby, Rails 문법부터 MVC 패턴, 폼 데이터 처리, 심볼과 스트링 차이, 모델 객체 다루기까지 순서대로 풀어보자.Ruby와 Rails 기본 개념Rails는 Ruby 언어 위에서 동작하는 프레임워크입니다.Ruby를 이해하면 Rails 구조도 이해하기 쉬워집니다.변수와 메서드변수(variable): 데이터를 담는 상자, 명사처럼 사용메서드(method): 동작, 기능, 동사처럼 사용 name = "민호" # 변수def greet # 메서드 puts "안녕하세요!"end클래스(class)객체를 만드는 틀예: 의사라는 클래스 → 나라는 객체 생성 후 치료라는 메서드 사용배열과 해시Array: 순서 있..
DEVELOPMENT/Ruby on Rails [Rails] C9 창, 오류코드, MVC, GET/POST 완전 복습 C9 개발환경 창 구성C9을 열면 여러 가지 창이 보이는데, 각각의 역할을 이해하면 개발이 훨씬 수월하다.창역할내비게이션프로젝트 폴더 구조 탐색텍스트 에디터코드를 작성하는 공간배쉬(Bash)명령어 입력 및 서버 실행로그창서버에서 발생하는 모든 이벤트 기록일지서버 기록을 모아 놓은 곳, 디버깅할 때 중요로그는 개발환경마다 기록 방식이 조금씩 달라서, 항상 확인하고 보안상 노출되지 않도록 주의해야 한다.C9 프로젝트에는 보통 log/ 폴더가 있으며, 환경별로 로그가 쌓인다.development.log → 개발 환경 로그test.log → 테스트 환경 로그production.log → 배포 환경 로그HTTP 상태코드 정리웹 개발에서 서버가 클라이언트에 보내는 상태코드(status code)는 문제를 빠르게 이..
DEVELOPMENT/Ruby on Rails [Rails] 프레임워크와 GET, POST 요청 쉽게 이해하기 웹 개발을 배우다 보면 프레임워크와 HTTP 요청(GET, POST)을 이해하는 것이 중요하다.이번 글에서는Ruby on Rails를 중심으로, MVC 패턴과 GET/POST 요청을 쉽게 풀어서 설명해보려고 한다.프레임워크란 무엇인가프레임워크는 웹 어플리케이션을 만들 때 기초 뼈대와 규칙을 제공해주는 도구라고 생각하면 된다.Python → DjangoJavaScript → AngularJS, ReactRuby → Ruby on RailsPHP → Laravel 등우리는 Ruby on Rails를 사용한다. Rails는 MVC 패턴을 기반으로 한다.MVC 패턴 이해하기MVC 패턴은 웹 서버를 운영하는 회사 조직 구조와 비슷하게 생각하면 이해가 쉽다.Model : 데이터 저장과 관리를 담당 (데이터 캐비넷)..
DEVELOPMENT/Ruby on Rails [Ruby] 변수, 배열, 해시 그리고 MVC 쉽게 이해하기 Ruby를 공부하다 보면 변수, 배열, 해시, 서버 구조, 그리고 MVC 패턴까지 다양한 개념을 접하게 된다.이 글에서는 일상과 비유를 활용해서 이해하기 쉽게 풀어보려고 한다.변수(Variable)변수는 정보를 저장하는 상자라고 생각하면 된다.상자 안에 데이터를 넣고 필요할 때 꺼내 쓸 수 있다.Ruby에서는 이렇게 사용한다. name = "Alice"age = 25name과 age가 상자의 이름(변수 이름)"Alice"와 25가 상자 안에 담긴 값변수는 같은 내용을 반복해서 쓰거나, 데이터를 쉽게 관리하기 위해 사용한다.변수에는 다양한 종류의 데이터를 담을 수 있다.숫자: 정수, 실수문자: 글자 한 개(Character)문자열: 글자 여러 개(String)논리값: 참/거짓(Boolean)주의: 연산은 ..
DEVELOPMENT/Ruby on Rails [Ruby] 변수, 상수, 메소드, 클래스 이해하기 Ruby를 처음 접하면 변수, 상수, 배열, 메소드, 클래스 같은 개념이 조금 어렵게 느껴질 수 있다. 하지만 일상에 비유하면 훨씬 이해가 쉬워진다. 하나씩 살펴보자.변수 (Variable)변수는 쉽게 말해 이름이 붙은 상자라고 생각하면 된다.이 상자 안에는 원하는 값을 넣을 수 있고, 필요할 때 꺼내서 사용할 수 있다.예를 들어, 'likelion'이라는 이름의 상자에 "hack your life"라는 값을 넣고 싶다면, Ruby에서는 이렇게 작성한다. likelion = "hack your life"likelion : 상자의 이름 (변수 이름)"hack your life" : 상자 안에 담긴 값상자 안의 내용은 언제든 바꿀 수 있다. 필요하면 새로운 값을 넣으면 된다.상수 (Constant)상수는 한..
DEVELOPMENT/Ruby on Rails [Ruby] Ruby를 배우기 전에... 웹 어플리케이션을 만든다고 하면, 사실 하나의 언어만 알아서는 부족하다. 다양한 언어들이 서로의 역할을 나눠서 하나의 서비스를 완성하기 때문이다. 그중에서도 HTML, CSS, JavaScript는 웹의 기본이 되는 3요소라고 할 수 있다.조금 더 쉽게 비유해보자면,HTML은 웹 어플리케이션의 뼈대다.페이지의 구조, 레이아웃, 그리고 기본적인 내용을 담당한다.CSS는 그 위에 옷을 입히는 디자이너다.색상, 글씨 크기, 위치, 크기 등 시각적인 요소를 꾸며주는 역할을 한다.JavaScript는 이 둘을 움직이게 만드는 엔진이다.클릭, 입력, 애니메이션 등 사용자의 동작에 따라 반응하는 동적인 요소를 만든다.그리고 jQuery는 JavaScript를 더 쉽게 쓸 수 있도록 도와주는 도우미 도구라고 보면 된다..
DEVELOPMENT/Ruby on Rails [Rails] 개요 Rails란레일즈는 개발자가 프로그래밍을 시작할 때 필요한 초기 준비나 가정들을 쉽게 만들수 있는 도구를 제공해 웹 애플리케이션 프로그래밍을 더 쉽게 진행하도록 돕는다. 레일즈 공식 홈페이지엔 “레일즈는 다른 언어와 프레임워크에 비해서 더 적은 코드로 작성된다” 라고 소개돼 있다 rails 를 설치하게 되면 아래의 폴더들이 저절로 설치되게 되고, 그 폴더의 역할을 아래와 같다. File/FolderPurposeapp/Contains the controllers, models, views, helpers, mailers, channels, jobs and assets for your application. You'll focus on this folder for the remainder of this gu..

반응형