Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Python Build a Social Network with Flask Making Strong Users What's a method like you doing in a class like this?

I don't know how to replace the pass in your method with a cls.create() call, using the provided email and a hash of the

I tried multiple solutions to pass this challenge, but none of them work. Could you please tell me why it's not working and the code to fix it, Thanks.

models.py
import datetime

from flask.ext.bcrypt import generate_password_hash
from flask.ext.login import UserMixin
from peewee import *

database = SqliteDatabase(':memory:')

class User(Model):
    email = CharField(unique=True)
    password = CharField(max_length=100)
    join_date = DateTimeField(default=datetime.datetime.now)
    bio = CharField(default='')

    class Meta:
        database = database   

    @classmethod
    def new(cls, email, password):
        pass

1 Answer

Well, your code passes the first challenge.

If you are on the second challenge; I should ask "Did you even try?" sine you didn't replace the pass with what the second task is asking for.

If you are on the first task and you are not passing; try refreshing the page. Your code seems to pass for me.

~Alex

I tried to do the second challeng by adding...

@classmethod
def new(cls, email, password):
    pass
cls.create(email, password)

You need to replace the pass with the code.

@classmethod
def new(cls, email, password):
    cls.create(email, password)

I hope this helps. ~Alex

This is the error I get... Bummer! create() takes 1 positional argument but 3 were given

import datetime

from flask.ext.bcrypt import generate_password_hash
from flask.ext.login import UserMixin
from peewee import *

database = SqliteDatabase(':memory:')

class User(Model):
    email = CharField(unique=True)
    password = CharField(max_length=100)
    join_date = DateTimeField(default=datetime.datetime.now)
    bio = CharField(default='')

    class Meta:
        database = database   

    @classmethod
    def new(cls, email, password):
        cls.create(email, password)

Oh I'm sorry I posted an incorrect answer. I found that this works:

import datetime

from flask.ext.bcrypt import generate_password_hash
from flask.ext.login import UserMixin
from peewee import *

database = SqliteDatabase(':memory:')

class User(Model):
    email = CharField(unique=True)
    password = CharField(max_length=100)
    join_date = DateTimeField(default=datetime.datetime.now)
    bio = CharField(default='')

    class Meta:
        database = database   

    @classmethod
    def new(cls, email, password):
        cls.create(email=email, password=generate_password_hash(password))

GOod luck. ~ALex