'Programing'에 해당되는 글 16건
- 2014.12.30 무한스크롤 (Infinite Scroll) 그리고 페이지네이션 (Pagination)
- 2014.12.09 [ruby on rails]InvalidAuthenticityToken
- 2014.10.23 블로그에 소스코드 작성하기
- 2014.10.23 [Ruby on Rails] 4.1 Release Notes
- 2014.10.23 Ruby on Rails API
- 2014.10.23 low ceremony
- 2014.10.22 [DevKit] 1.DevKit이란?
- 2014.10.22 [Markdown] 마크다운 문법
- 2014.10.22 CDN - contents delivery network
- 2014.10.21 [Sass] sass/scss -css 작성을 편리하게
무한스크롤 예)
페이스북
페이지네이션 예)
일반적인 게시판에서 볼수 있는 페이지 이동 방식
'terms' 카테고리의 다른 글
low ceremony (0) | 2014.10.23 |
---|---|
[Markdown] 마크다운 문법 (0) | 2014.10.22 |
CDN - contents delivery network (0) | 2014.10.22 |
[ruby] mixin (0) | 2014.10.21 |
software vs application (0) | 2014.10.19 |
Ruby on Rails
POST를 하게 되면 [ InvalidAuthenticityToken ] 오류가 종종 발생한다.
1. CSRF 기능을 끄거나
2. <FORM> 태그 대신 레일스의 폼 헬퍼 메서드 즉 form_tag 등의 기능을 사용하는 방법
레일스 2.0에는 CSRF (Cross-Site Request Forgery) 공격을 막기 위한 기능이 포함되어있으므로
CSRF를 위해 form에 안전한 키를 숨기고 서버사이드에서는 내가 발급한 키가 맞는지 확인해서 값을 비교
이 때 뭔가 문제가 있으면 InvalidAuthenticityToken 예외가 발생
ruby controller 파일에 skip_before_filter :verify_authenticity_token 을 적으면 해결되긴 함
루비 온 레일즈 4.1 릴리즈 노트
주목할 만한 것들
Spring의 Application Preloader
새로 생긴 config/secrets.yml 파일
액션팩(ActionView와 ActionController 모듈을 합쳐 부르는 것) 의 변수들
Action Mailer 미리보기
1. Rails 4.1 버전으로 업그레이드 하기
- http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-4-0-to-rails-4-1
2.2 config/secrets.yml
- Rails 4.1 버전은 이전에 없던 secrets.yml 파일을 생성하게 된다.
이 파일은 기본적으로 application의 secret_key_base를 포함하는데 이것은 외부 API를 위한 액세스 키 같은 비밀 data를 저장하는데 쓰일 수 있다.
- secrets.yml에 추가된 비밀 데이터들은 Rails.application.secrets를 통해 접근이 가능하다.
- 예를 들면
"키 : 키값" 이 secrets.yml 파일에 있을때
development 환경에서 "Rails.application.secrets.키" 는 키값을 리턴한다.
2.3 Action Pack 변수
- 주로 스마트폰, 타블렛, pc 브라우저에 따라 다른 HTML/JSON/XML 템플릿들을 렌더링 할때 쉽게 할 수 있게 해준다.
2.4 Action Mailer Previews
- 특별한 URL을 통해 email을 시각적으로 볼 수 있게 해주는 방법을 제공한다.
- ActionMailer 패키지
2.5 Active Record enums
- http://api.rubyonrails.org/v4.1.0/classes/ActiveRecord/Enum.html
2.6 Message Verifiers
- Message Verifiers로 서명된 메세지를 생성하고 확인할 수 있다. 민감한 데이터를 안전하게 전송할 때 유용하다.
- Rails.application.message_verifier 메소드는 secret_key_base 와 message verifier 이름으로 부터 키를 얻어 메세지에 서명을 하는 message verifier를 생성한다.
2.7 Module@concerning
- mix-in으로 생기는 단점을 제거함으로써 자연스럽고 low-ceremony적인 방법으로 하나의 클래스의 역할을 분리해서 관리 할 수 있다. 1
- 링크 : http://api.rubyonrails.org/v4.1.0/classes/Module/Concerning.html
2.8 CSRF protection from remote <script> tags
- Cross site request forgery(CSRF) protection 은 GET 요청을 통한 자바스크립트 응답도 처리할 수 있다. 즉, 제 3자의 사이트에서 당신의 자바스크립트 URL을 참조하는 것과 중요한 데이터를 추출해내기 위해 자바스크립트를 구동하는것을 예방해 준다.
- 자바 스크립트 url이 xhr을 이용하지 않는 이상 CSRF protection에 막혀 실패할 것이다. 그러므로 XmlHttpRequests 를 명시적으로 사용하도록 post:create, format: : js 대신 xhr : post, :create, format: :js 를 사용하라.
3 Railties (rails 네임스페이스 안의 class이다. Object 클래스를 상속받음)
3.1 제거된 것들
- Removed
update:application_controller
rake task
- Removed deprecated Rails.application.railties.engines
- Removed deprecated threadsafe! from Rails Config
- Removed deprecated ActiveRecord::Generators::ActiveModel#update_attributes
3.2 주목할 만한 변경사항
- Spring application preloader 가 기본적으로 새 어플리케이션에 설치된다.
- 그러나 이것은 develop group의 Gemfile을 사용하므로 production 모드에서는 설치가 안될 것이다.
- BACKTRACE 환경 변수가 사라지는 현상
- 환경 설정에 노출된 MiddlewareStack#unshift
- [term]low-ceremony 참고 참고 [본문으로]
2014년 10월 23일 기준으로 4.1.6 버전 api을 보여준다.
'ruby on rails > Reference' 카테고리의 다른 글
[루비 젬] RubyGems.org (0) | 2014.10.19 |
---|---|
Ruby On Rails Guides (1) | 2014.10.14 |
rails release note 4.1을 보다가 low-ceremony way 라는 표현이 나와서 무슨 뜻인지 찾아봤다.
찾다 보니 high ceremony 라는 말도 있던데 도무지 찾아도 용어에 대한 정의는 나오지 않고
뒤적뒤적 거리다가 힌트를 얻은 글이 있었다.
In this paper, we draw on numerous empirical studies of end-user and professional programmers to show that the reusablity of code can be inferred on the basis of "low-ceremony" evidence. This evidence is information that is often informal, possibly unreliable, but that can be quickly gathered, interpreted and synthesized without the investment of substantial effort or skill by code producers or consumers.
위에 써있는 대로 low ceremony는
"정형화 되지 않고, 믿을 수 없겠지만 , 개발자와 고객이 상당한 노력이나 기술을 가지고 조사할 필요 없이 빠르게 (정보가) 모아지고 이해되고 종합되는"
이런 것 이라고 보면 될 것 같다.
정리하자면
'정형화 되지 않았지만 보고 이해하고 종합하기 쉬운' 이 정도 의미라고 하면 될 것 같다.
글 링크 (pdf 파일입니다)
- http://web.engr.oregonstate.edu/~cscaffid/papers/eu_20081031_eupwebsharing.pdf
'terms' 카테고리의 다른 글
무한스크롤 (Infinite Scroll) 그리고 페이지네이션 (Pagination) (0) | 2014.12.30 |
---|---|
[Markdown] 마크다운 문법 (0) | 2014.10.22 |
CDN - contents delivery network (0) | 2014.10.22 |
[ruby] mixin (0) | 2014.10.21 |
software vs application (0) | 2014.10.19 |
네이티브 c/ c++ 확장 플러그인을 RubyGem을 통해 쉽게 다운로드, 설치, 사용할 수 있게 해주는
toolkit-addon 이다.
http://rubyinstaller.org/downloads/
-> 여기서 다운 받을 수 있다.
설치 과정은 다음에 포스트..
'ruby on rails > Tool' 카테고리의 다른 글
[Sass] sass/scss -css 작성을 편리하게 (0) | 2014.10.21 |
---|
마크다운 문법은 일반 텍스트문서의 양식을 편집하는 문법이다.
이렇게 작성된 문서는 쉽게 HTML 등 다른 양식의 문서로 변환이 가능하다.
예를들면
HTML에서 쓰던
<strong>굵게</strong> 를
이렇게
**굵게**
표현한다고 할까
아래 나오는 툴로 마크다운 문서를 HTML로 변환 할 수 있다.
-> 요거 많이 쓰이는 것 같다.
RDiscount – Markdown for Ruby
루비 Devkit이 지원하는 확장 플러그인? 프로그램? 인 Rdiscount
Rdiscount 사이트
http://dafoster.net/projects/rdiscount/
About RDiscount
http://www.pell.portland.or.us/~orc/Code/discount/#Language.extensions
'terms' 카테고리의 다른 글
무한스크롤 (Infinite Scroll) 그리고 페이지네이션 (Pagination) (0) | 2014.12.30 |
---|---|
low ceremony (0) | 2014.10.23 |
CDN - contents delivery network (0) | 2014.10.22 |
[ruby] mixin (0) | 2014.10.21 |
software vs application (0) | 2014.10.19 |
CDN(Contents Delivery Network)는 인터넷(Internet) 사용 환경에서 게임 클라이언트(Client)나 콘텐츠(Contents)를 사용자의 PC로 효율적으로 전달하기 위해 분산된 서버(Server)에 데이터(Data)를 저장해 전달해주는 시스템(System)을 말한다. CDN은 보통 인터넷 서비스 제공자(ISP, Internet Service Provider)에 직접 연결해 데이터를 전송하는데, 이렇게 되면 한꺼번에 많은 사용자가 몰렸을 때 데이터 전송 속도가 느려지는 등의 콘텐츠 병목 현상을 피할 수 있다는 장점이 있다. 이렇게 연결된 구조는 콘텐츠 공급자에게 안정성과 더불어 비용 절감효과를 가져다 준다.[네이버 지식백과] CDN [Contents Delivery Network] (게임용어사전: 기관/용어, 2013.12.12)
jquery를 쓸때 http://code.jquery.com/jquery-latest.min.js 를 헤더에 넣으면
자동으로 최신 jquery 버전을 쓸 수 있었는데 이것이 CDN 이었다.
jquery 뿐만 아니라 bootstrap등 다른 것들도 CDN을 지원하는 것을 보았다.
'terms' 카테고리의 다른 글
low ceremony (0) | 2014.10.23 |
---|---|
[Markdown] 마크다운 문법 (0) | 2014.10.22 |
[ruby] mixin (0) | 2014.10.21 |
software vs application (0) | 2014.10.19 |
native application / 네이티브 어플리케이션 (0) | 2014.10.19 |
Sass에는 두가지 문법이 있다.
하나는 Sass 3 버전 부터 새로 생긴 문법인 Scss 이다.
CSS3를 지원하고 .scss 확장자를 사용한다.
구버전인 Sass는 대괄호와 세미콜론을 사용하지 않는 표현식을 사용한다.
Scss가 나왔지만 여전히 지원되고 있고 .sass 확장자를 사용한다.
Sass는 CSS3의 확장 정도로 볼 수 있다.
추가된 기능을 몇개 보자면
- 변수 선언,사용 가능
- nesting 규칙
- (element 안에 다른 element가 있는 것을 구분하기 쉽게 해줌)
- partial 기능
- (partial은 소량의 css 코드를 가지며 모듈화 하기에 좋다)
- (단, partial 파일은 _partial.scss 형태로 네이밍)
- import 기능
- (@import 를 사용하서 import 한다)
- (단점은 각 @import 마다 하나의 http 요청을 생성한다는 것)
- mixin 기능
- (@mixin 을 사용해서 템플릿 처럼 만들어 쓸 수 있다)
- 상속
- (@extend를 사용해서 상속과 같은 효과를 볼 수 있다)
- (같은 코드를 반복할 필요가 없음)
- 연산자
- (width : 300px / 960px * 100 이렇게 쓰면 웹 상에서는 width : 62.5%로 자동변환)
공식 사이트
'ruby on rails > Tool' 카테고리의 다른 글
[DevKit] 1.DevKit이란? (0) | 2014.10.22 |
---|