why can't I access a collection like a vector ?
blog.h
/*
Copyright 2010 Jan Koester
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#ifndef VIEWPOSTS_H_
#define VIEWPOSTS_H_
#include <Wt/Dbo/Dbo>
#include <Wt/Dbo/Query>
#include <Wt/Dbo/WtSqlTraits>
#include <Wt/Dbo/Types>
class Posts : public Wt::Dbo::Dbo<Posts>
{
private:
Wt::Dbo::Session Session;
public:
void setSession(Wt::Dbo::Session *session){
Session = *session;
Session.mapClass<Posts>("blog");
};
void setCategory(int *category){
Category =*category;
};
void setQuery();
int getCounts();
int getId(){
return Id;
}
/*Problem here*/
Wt::WString getTitle(int id){
return Title[id];
}
Wt::WString getAuthor(int id){
return Author[id];
}
Wt::WString getCreated(int id){
return Created.toString("dd.MM.yyyy")[id];
}
Wt::WString getContent(int id){
return Content[id];
}
/* what could be wrong ?*/
typedef Wt::Dbo::collection<Wt::Dbo::ptr<Posts>> ViewPostings;
Wt::Dbo::ptr<Posts> entry;
int Id,Category;
Wt::WDate Created;
Wt::WString Title;
Wt::WString Author;
Wt::WString Content;
template<class Action>
void persist(Action& a)
{
Wt::Dbo::field(a, Id, "id");
Wt::Dbo::field(a, Category, "category");
Wt::Dbo::field(a, Title, "title");
Wt::Dbo::field(a, Author, "author");
Wt::Dbo::field(a, Created, "created");
Wt::Dbo::field(a, Content, "content");
}
};
#endif
blog.cpp
/*
Copyright 2010 Jan Koester
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#include <iostream>
#include <string>
#include <vector>
#include "viewposts.h"
void Posts::setQuery()
{
try {
Session.createTables();
}catch (...) { }
Wt::Dbo::Transaction transaction(Session);
ViewPostings viewpostings;
if(Category>=0){
viewpostings = Session.find<Posts>();
}else{
viewpostings = Session.find<Posts>().where("category = ?").bind(Category);
}
/*
for (ViewPostings::const_iterator i = viewpostings.begin(); i !=
viewpostings.end(); ++i){
(*i)->Title;
(*i)->Author;
(*i)->Created.toString("dd.MM.yyyy");
(*i)->Content;
}*/
transaction.commit();
}
int Posts::getCounts()
{
try {
Session.createTables();
}catch (...) { }
Wt::Dbo::Transaction transaction(Session);
ViewPostings viewpostings;
if(Category>=0){
viewpostings = Session.find<Posts>();
}else{
viewpostings = Session.find<Posts>().where("category = ?").bind(Category);
}
transaction.commit();
return viewpostings.size();
}
------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
witty-interest mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/witty-interest