[FLOW3-general] Unable to display form
Vinay Vinay
nvinayvinay at gmail.com
Tue May 4 18:00:57 CEST 2010
Hi,
Thanks for you early reply and clearing my doubts.
Output was not comming because
I created master.html (layout) and did not add the code
<?xml version="1.0" encoding="utf-8"?>
*<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">*
*<html* lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"*>*
*<head>*
*<meta* http-equiv="Content-Type" content="text/html; charset=utf-8"* />*
*<f:base />*
*<title>*{blog.title}*</title>*
*<link* rel="stylesheet" href="{f:uri.resource(path: 'Blog.css')}"
type="text/css" media="all"* />*
*</head>*
*<body>*
*<div* id="header"*>*
*<f:if* condition="{blog}"*>*
*<f:link.action* action="index" controller="Post"
arguments="{blog: blog}"*>*
*<h1* class="title"*>*{blog.title}*</h1>**</f:link.action>*
*<p* class="description"*>*{blog.description}*</p>*
*</f:if>*
*</div>*
*<div* id="maincontainer"*>*
*<div* id="mainbox"*>**<f:render* section="mainbox"* />**</div>*
*<div* class="clear"*>**</div>*
*</div>*
*<div* id="footer"*>*
*<a* href="http://flow3.typo3.org"*>*Powered by FLOW3
*<img* src="{f:uri.resource(path: 'FLOW3-Logo-11px.png')}"
width="11" height="11"* />*
*</a>*
*</div>*
*</body>*
*</html>*
Now I am getting the output.
I have one more issue
On getting post data
1)
public function createAction(\F3\Blog\Domain\Model\Post $newPost) {
}
2) /Blog/Classes/Domain/Model/blog.php has code
<?php
declare(ENCODING = 'utf-8');
namespace F3\Blog\Domain\Model;
/**
* A blog
*
* @scope prototype
* @entity
*/
class Blog {
/**
* The blog's title.
*
* @var string
*/
protected $title = '';
/**
* A short description of the blog
*
* @var string
*/
protected $description = '';
/**
* The posts contained in this blog
*
* @var \SplObjectStorage<\F3\Blog\Domain\Model\Post>
*/
protected $posts;
/**
* Constructs a new Blog
*
*/
public function __construct() {
$this->posts = new \SplObjectStorage();
}
/**
* Sets this blog's title
*
* @param string $title The blog's title
* @return void
*/
public function setTitle($title) {
$this->title = $title;
}
/**
* Returns the blog's title
*
* @return string The blog's title
*/
public function getTitle() {
return $this->title;
}
/**
* Sets the description for the blog
*
* @param string $description The blog description or "tag line"
* @return void
*/
public function setDescription($description) {
$this->description = $description;
}
/**
* Returns the description
*
* @return string The blog description
*/
public function getDescription() {
return $this->description;
}
/**
* Adds a post to this blog
*
* @param \F3\Blog\Domain\Model\Post $post
* @return void
*/
public function addPost(\F3\Blog\Domain\Model\Post $post) {
$post->setBlog($this);
$this->posts->attach($post);
}
/**
* Returns all posts in this blog
*
* @return \SplObjectStorage<\F3\Blog\Domain\Model\Post> The posts of
this blog
*/
public function getPosts() {
return clone $this->posts;
}
}
?>
I am getting the error
FLOW3 experienced an internal error (uncaught exception):
F3\FLOW3\Error\Exception
what is \F3\Blog\Domain\Model\Post . I have not created any class like
this.
On Tue, May 4, 2010 at 8:44 PM, Michael Sauter <mail at michaelsauter.net>wrote:
> On 04.05.10 16:58, Vinay Vinay wrote:
>
>> Hi,
>>
>> I have a issue in displaying form field.
>>
>> After going the article from
>>
>> http://flow3.typo3.org/documentation/tutorials/getting-started/gettingstarted.view/
>>
>> 1)
>>
>> I created the action
>>
>> /**
>> * New action
>> *
>> * @return void
>> */
>> public function newAction() {
>> }
>>
>> 2)
>>
>> I created a html file in
>> Blog/Resources/Private/Templates/Standard/new.html
>>
>
> So you added the newAction in StandardController?
> Make sure both controller name and template folder are the same.
>
>
> and added the xml field
>>
>> *<f:layout* name="master"* />*
>>
>> *<f:section* name="mainbox"*>*
>> *<h2* class="flow3-firstHeader"*>*Create a new post*</h2>*
>> *<f:flashMessages* class="flashmessages"*/>*
>> *<f:form* method="post" action="create" object="{newPost}"
>> name="newPost" enctype="multipart/form-data"*>*
>> *<f:form.hidden* name="blog" value="{blog}"* />*
>> *<label* for="author"*>*Author*</label>**<br />*
>> *<f:form.textbox* property="author" id="author"* />**<br
>> />*
>> *<label* for="title"*>*Title*</label>**<br />*
>> *<f:form.textbox* property="title" id="title"* />**<br />*
>> *<label* for="content"*>*Content*</label>**<br />*
>> *<f:form.textarea* property="content" rows="5" cols="40"
>> id="content"* />**<br />*
>> *<f:if* condition="{existingPosts}"*>*
>> *<label* for="relatedPosts"*>*Related
>> Posts*</label>**<br />*
>> *<f:form.select* property="relatedPosts"
>> options="{existingPosts}"
>> optionLabelField="title" multiple="1" size="4" id="relatedPosts"*
>> />**<br />*
>> *<br />*
>> *</f:if>*
>> *<f:form.submit* value="Submit post"*/>*
>> *</f:form>*
>> *</f:section>*
>>
>
> As you see, the code uses some object accessors like {newPost} and {blog}.
> Seems like they are not described in the tutorial (because the action would
> need to assign those variables to the view). Unfortunately, the tutorial is
> out of sync with the code base. So excpect some problems there ...
>
>
> I am getting empty out put.
>>
>
> What do you mean by that? Blank page? An exception?
> Did you clear the cache?
>
>
> The article says that i have to create new.html in
>> Resources/Public/Templates/Post/
>>
>
> That's obviously wrong. Should be Resources/Private/Templates/Post/.
>
>
> One more thing I couldn't understand the difference between
>> Resources/Public/
>> and Resources/Private/
>>
>
> Basically, put everything that should be accessible without FLOW3 in
> Public, and everything else in Private.
> So, images, css files and javascript files go in Public (because they
> should be accessible directly), and Fluid templates and such go in Private
> (because they shouldn't be accessible directly, but need to be parsed by the
> template engine).
>
> _______________________________________________
> FLOW3-general mailing list
> FLOW3-general at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/flow3-general
>
More information about the FLOW3-general
mailing list