modella-slug

0.3.1 • Public • Published

model-slug

create slugs for models

Installation

In the browser (with component):

component install modella/slug

On the server (with node.js):

npm install modella-slug

Example

var slug = require('slug');
 
var Blog = modella('blog')
  .attr('title')
  .attr('content')
  .use(slug('title'))
 
  var b = new Blog();
  b.title('A seriously interesting title');
  b.slug();
  // => 'a-seriously-interesting-title'
 

Multi-Attribute Example

var slug = require('slug');
 
var Blog = modella('blog')
  .attr('title')
  .attr('author')
  .attr('content')
  .use(slug(['title', 'author'], ':title-by-:author'));
 
  var b = new Blog();
  b.title('Some blog post');
  b.slug();
  // => 'some-blog-post-by-'
 
  b.author('Ryan S.');
  b.slug();
  // => 'some-blog-post-by-ryan-s'
 

Function Based Example

var slug = require('slug');
 
 
var Blog = modella('blog')
  .attr('title')
  .attr('author')
  .attr('content');
 
var getBlogSlug = function(blog) {
  var result = blog.title();
  if(blog.author()) {
    result += ' by ' + blog.author();
  }
  return result;
};
 
  Blog.use(slug(['author', 'title'], getBlogSlug));
 
  var b = new Blog();
  b.title('Some blog post');
 
  b.slug();
  // => 'some-blog-post'
 
  b.author('Ryan S.');
  b.slug();
  // => 'some-blog-post-by-ryan-s'
 

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i modella-slug

Weekly Downloads

7

Version

0.3.1

License

MIT

Last publish

Collaborators

  • mattmueller
  • rschmukler